SQL DATE_FORMAT() Kullanımı
SQL DATE_FORMAT() Kullanımı
Bu fornsiyon ile MySQL veritabanlarındaki tarih alanını farklı biçimlerde ekrana yazdırmak mümkündür. Bu fornksiyon SQL Server veritabanlarında çalışmaz. SQL Server veritabanlarında CONVERT() fonksiyonu çalışmaktadır.
Kullanım Biçimi
SELECT DATE_FORMAT(tarih_alani, gosterim_formati) FROM tablo_adi |
Yukarıda belirttiğimiz gibi DATE_FORMAT ile bir tarih verisi girmemiz gerekir. Bu veri veritabanından gelebileceği gibi tarih fonksiyonlarından da faydalanabiliriz.
Gösterim formatları aşağıdaki gibidir.
Gösterim Biçimi | Açıklaması |
---|---|
%a | Kısa günün adı (Örnek: Wed, Fri) |
%b | Kısa ay adı (Örnek: Feb, Jun, Jul) |
%c | Sayısal olarak ay gösterimi |
%D | İngilizce son eklerle birlikte ayın günü (Ör: 1st , 2nd ,3rd , 4th) |
%d | Ayın günü çüft hane olarak numarasını verir (00-31) |
%e | Ayın günü tek hane olarak numarasını verir (0-31) |
%f | Mikrosaniye |
%H | Çift hane Saat (00-23) |
%h | Çift hane Saat (01-12) |
%i | Dakika (00-59) |
%j | Yılın kaçıncı günü olduğunu verir (001-366) |
%k | Tek hane Saat (0-23) |
%l | Tek hane Saat (1-12) |
%M | Ayın adı (Örnek: February,April) |
%m | Sayısal olarak Ay (00-12) |
%p | AM veya PM |
%r | Zaman, 12-saat (hh:mm:ss AM veya PM) |
%S | Saniye (00-59) |
%s | Saniye (00-59) |
%T | Zaman, 24-saat (hh:mm:ss) |
%U | Yılın hangi haftası olduğunu verir (00-53) Pazar haftanın ilk günü olarak alınır. |
%u | Yılın hangi haftası olduğunu verir (00-53) Pazartesi haftanın ilk günü olarak alınır. |
%W | Günün adını verir (Örnek: Friday) |
%w | Sayısal olarak haftanın günü verir. 0 'dan başlar. (0=Sunday, 6=Saturday) |
%Y | Dört basamaklı Yıl |
%y | İki basamaklı Yıl |
Örnek 1:
DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')
DATE_FORMAT(NOW(),'%m-%d-%Y')
DATE_FORMAT(NOW(),'%d %b %y')
DATE_FORMAT(NOW(),'%d %b %Y %T:%f')
Çıktısı:
Nov 04 2014 11:45 PM
11-04-2014
04 Nov 14
04 Nov 2014 11:45:34:243
Örnek 2:
Aşağıdaki gibi tablomuz olsun
id | ad_soyad | dogum_tarihi |
1 | Salih ESKİOĞLU | 1980-01-19 |
2 | İlhan ÖZLÜ | 1979-05-01 |
Select ad_soyad, DATE_FORMAT(dogum_tar,'%d %b %y') AS [Doğum Tarihi] From Personel
Çıktısı:
ad_soyad | Doğum Tarihi |
Salih ESKİOĞLU | 19 Jan 1980 |
İlhan ÖZLÜ | 01 May 1979 |
Burada ki örneği incelediğimiz zaman veritabanında ki Perspnel tablosunda dogum_tar alanında bilgiler YYYY-MM-DD şeklinde tutulmaktadır. İlgili alana biçim değişimi uygulanarak hem görsellik hem de okuma kolaylığı sağlanmış olunuyor. Dikkat edecek olursanız AS ifadesinden sonra köşeli parantezli yazım kullanılmıştır. Köşeli parantezli yapıda belirteceğimiz görüntü adı için boşluk ve Türkçe karakter kullanabiliriz.