Tarih için PostgreSQL TO_CHAR()

Tarih Icin Postgresql To Char



PostgreSQL tablonuzda bir tarih değeriniz olduğunda, TO_CHAR() işlevini kullanarak bunun formatını farklı şekillerde değiştirebilirsiniz. TO_CHAR(), kullanıcıların sayısal değerleri, zaman damgalarını, aralıkları veya tam sayıları dizelere dönüştürmesine olanak tanır. Bu yazıda tarih formatını TO_CHAR() ile dönüştürmek için PostgreSQL'in nasıl kullanılacağına odaklanacağız.

TO_CHAR() ile çalışma

İster PostgreSQL sorgunuzda güncel tarihi elde etmek ister tablonuzdaki tarihlerle çalışmak isteyin, tarihin bir dizgeye nasıl dönüştürüleceğini anlamak çok önemlidir. Belki çıktınız olarak tarih için daha güzel bir format istiyorsunuz veya tarihi bir dizeye dönüştürdükten sonra tarihin bir bölümünü çıkarmak istiyorsunuz. Durum ne olursa olsun TO_CHAR() ideal fonksiyondur.

Ayrıca TO_CHAR() kullanabileceğiniz birçok biçimlendirme seçeneği sunar. İstenilen çıktıyı elde etmek için farklı seçenekleri birleştirebilirsiniz.







TO_CHAR() aşağıdaki sözdizimini alır:



TO_CHAR(ifade, biçim);

İfade, belirtilen biçimi kullanarak dönüştürmek istediğiniz zaman damgasıdır.



Yaygın olarak kullanılan TO_CHAR() biçimleri şunlardır:





1 yıl

YYYY – Yılı 4 haneli olarak gösterir.

Y,YYY – Yıldaki dört rakamı temsil etmek için virgül kullanılır.



YYY – Belirtilen yılın yalnızca son üç hanesini gösterir.

YY – Belirtilen yılın yalnızca son iki hanesini gösterir.

VE - Yalnızca belirtilen yılın son rakamını gösterir.

2 ay

AY - Ay adı için büyük harf kullanılır.

ay - Ay adı için küçük harf kullanılır.

BENİM - Ayı büyük harflerle kısaltır.

Benim - Ayı kısaltır ve büyük harfle yazar.

MM – Sadece ay numarasını gösteriyor.

3 gün

GÜN - Büyük harfli gün adı.

gün - Küçük harfli gün adı.

SEN - Gün adını kısaltır ve büyük harfle yazar.

Onlar - Gün adını kısaltır ve büyük harfle yazar.

Sen- Küçük harflerle kısaltılmış gün adı.

4. Zaman

HH – Günün saati

HH12 – 12 saatlik format

HH24 – 24 saatlik format

BENİM - dakika

SS – Saniye

Verilen formatlar kullanabileceğiniz tek TO_CHAR() formatları değildir ancak en sık kullanılan formatlardır. Bu yazımızda örnek kullanımlarını vereceğiz.

Örnek 1: Tarihi String'e Dönüştürme

Bu örnekte ifademiz olarak hedef tarihi yazıyoruz ve hangi formata dönüştürüleceğini belirtiyoruz. Aşağıdaki çıktı “2023-11-29”u daha okunaklı ve anlaşılır bir dizeye nasıl dönüştürdüğümüzü gösteriyor:

Örnek 2: Geçerli Tarihle Çalışmak

PostgreSQL'de CURRENT_DATE size o günün tarihini verir.

Bunu bir dizeye dönüştürmek istediğimizi varsayalım. İfademiz olarak yalnızca CURRENT_DATE kullanmamız ve ardından formatımızı belirtmemiz gerekiyor. Artık geçerli tarihinizi bir dize olarak alıyorsunuz.

Yine de hedefinize ulaşmak için formatı farklı bir formatla değiştirebilirsiniz. Örneğin sadece tarih, ay ve yılı göstermek istiyorsak komutumuzu şu şekilde ayarlıyoruz:

TO_CHAR()'ın güzelliği, randevunuz için kullanmak istediğiniz son formatı oluşturmak için farklı formatları birleştirebilmenizdir. Devam edelim ve zaman damgalarıyla çalışalım.

Örnek 3: Zaman Damgasıyla Çalışmak

Şu ana kadar sadece tarihlerle çalıştık. Ancak tarihiniz saat içeriyorsa ideal formatını belirterek saati çıkartabilirsiniz.

Burada, tarihi dışarıda bırakarak, sağlanan zaman damgasından saati 24 saat biçiminde almayı belirttiğimiz bir örnek verilmiştir:

12 saatlik zaman biçimi için HH24 yerine HH12'yi kullanıyoruz. Aşağıdaki örneğe bir göz atın:

Son olarak, sağlanan zaman damgasından tarih ve saati çıkarmak istiyorsak yalnızca kullanmak istediğimiz ideal formatı eklememiz gerekir. Burada saat olarak HH12:MI:SS kullanımını belirtiyoruz ve ayırıcı ekliyoruz. Daha sonra tarih için “dd, Month, yyyy” kullanılacağını belirtiyoruz.

Son çıktımız şu şekilde:

Örnek 4: Tabloyla Çalışmak

Tartıştığımız ve bahsettiğimiz tüm formatlar PostgreSQL tablosuna uygulanabilir. Bu örnekte “tarih” sütununu içeren “siparişler” adında bir tablomuz var. Buradaki elemanları seçmek ve “tarih” sütunu için TO_CHAR() işlevini kullanmak için komutumuzu aşağıda gösterildiği gibi çalıştırıyoruz:

Dilediğiniz formatı kullanabilirsiniz. İşte aynı komut ancak farklı bir tarih formatıyla:

Tarih sütunundan yalnızca haftanın gününü ve ayı göstermek istiyorsak, komutu şu şekilde ayarlayacağız:

Davanız için çalışmak istediğiniz herhangi bir ideal formatı belirtmekten çekinmeyin.

Çözüm

TO_CHAR(), kullanıcıların zaman damgalarını ve diğer değişmez değerleri dizelere dönüştürmesine olanak tanıyan kullanışlı bir PostgreSQL işlevidir. Bu yazı, tarihler için TO_CHAR() işlevini kullanabileceğiniz farklı yolları göstermektedir. İçeriği hızlı bir şekilde kavrayabilmeniz için farklı örnekler sunduk. Umarım TO_CHAR() artık sizi rahatsız etmez.