Cara Menampilkan Format SELECT DateTime / Tanggal di MySQL Sesuka Hati Kita
Tantangan yang sering kita hadapi saat ingin menampilkan data tanggal bertipe DateTime dari Database MySQL karena tidak sesuai dengan apa yang kita inginkan. Kadang kita harus meneriman kenyataan bahwa data yang dihasilkan dari database mengikuti format default yaitu YYYY-MM-DD HH:II:SS. Padahal sebenarnya format tanggal dari database cukup mudah kita manipulasi dengan menggunakan fungsi bawaan MySQL yaitu DATE_FORMAT(field_tanggal, format). Misalnya kita ingin menampilkan tanggal dengan format DD-MM-YYYY HH:II:SS maka contoh query-nya berikut ini:
SELECT *, DATE_FORMAT(tanggal_masuk, '%D-%M-%Y %H:%I:%S') AS tanggal_input FROM `CDS`;Maka hasil yang akan kita peroleh seperti berikut ini :
Bagaimana jika ingin menampilkan tanggal dari database MySQL dengan format lain?
Berikut tabel yang bisa kita pakai untuk mendapatkan format tanggal sesuai dengan yang kita inginkan, jangan lupa menuliskan tanda persen ( % ) di awal setiap format tanggal :
Format | Keterangan |
---|---|
%a | Singkatan nama hari (Bahasa Inggris) (Sun..Sat) |
%b | Singkatan nama bulan (Bahasa Inggris) (Jan..Dec)) |
%c | Bulan, dalam bentuk angka/numeric (0..12) |
%D | Hari di bulan ini diakhiri suffix Bahasa Inggris (0th, 1st, 2nd, 3rd, …) |
%d | Hari di bulan ini, angka (00-31) |
%e | Hari di bulan ini, angka (0-31) |
%f | Microsecond (000000..999999) |
%H | Jam (00-23) |
%h | Jam (01-12) |
%I | Jam (01-12) |
%i | Menit, angka (00-59) |
%j | Hari dalam setahun (001-366) |
%k | Jam (0-23) |
%l | Jam (1-12) |
%M | Nama Bulan (January..December) |
%m | Bulan, angka (00-12) |
%p | AM atau PM |
%r | Waktu, 12-jam (hh:mm:ss AM or PM) |
%S | Detik (00-59) |
%s | Detik (00-59) |
%T | Waktu, 24-jam (hh:mm:ss) |
%U | Pekan (00-53) dengan Minggu sebagai awal pekan, WEEK() mode 0 |
%u | Pekan (00-53) dengan Senin sebagai awal pekan, WEEK() mode 1 |
%V | Pekan (01-53) dengan Minggu sebagai awal pekan, digunakan dengan %X |
%v | Week (01-53) dengan Senin sebagai awal pekan, digunakan dengan %x |
%W | Nama Hari, Bahasa Inggris |
%w | Hari dalam seminggu (0=Minggu, 6=Sabtu) |
%X | Tahun dalam pekan dengan Minggu sebagai awal pekan, empat angka, digunakan dengan %V |
%x | Tahun dalam pekan dengan Senin sebagai awal pekan, empat angka, digunakan dengan %v |
%Y | Tahun, empat angka |
%y | Tahun, dua angka |
Contohnya :
Example
Query berikut menggunakan fungsi DATE_FORMAT() untuk menampilkan format yang berbeda-beda. Kita akan menggukan fungsi NOW() untuk mendapatkan waktu saat ini:
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')
Hasilnya akan terlihat seperti berikut:
Nov 04 2008 11:45 PM 11-04-2008 04 Nov 08 04 Nov 2008 11:45:34:243
Mungkin cukup sekian artikel kali ini. Silakan tinggalkan komentar jika ada sesuatu yang ingin ditanyakan atau sekedar memberi masukan, saya tunggu. Salam Blogger Madura
nice info gann . !!!
BalasHapususefull gan..
BalasHapusthanks
salam kenal
-ajib19-
gan nanya.. kalau menampilkan data yang ada pada tabel berdasarkan Hari dalam bahasa indonesia, bagaimana Query nya
BalasHapuswebnya masih ada bug kak
BalasHapus