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
%aSingkatan nama hari (Bahasa Inggris) (Sun..Sat)
%bSingkatan nama bulan (Bahasa Inggris) (Jan..Dec))
%cBulan, dalam bentuk angka/numeric (0..12)
%DHari di bulan ini diakhiri suffix Bahasa Inggris (0th, 1st, 2nd, 3rd, …)
%dHari di bulan ini, angka (00-31)
%eHari di bulan ini, angka (0-31)
%fMicrosecond (000000..999999)
%HJam (00-23)
%hJam (01-12)
%IJam (01-12)
%iMenit, angka (00-59)
%jHari dalam setahun (001-366)
%kJam (0-23)
%lJam (1-12)
%MNama Bulan (January..December)
%mBulan, angka (00-12)
%pAM atau PM
%rWaktu, 12-jam (hh:mm:ss AM or PM)
%SDetik (00-59)
%sDetik (00-59)
%TWaktu, 24-jam (hh:mm:ss)
%UPekan (00-53) dengan Minggu sebagai awal pekan, WEEK() mode 0
%uPekan (00-53) dengan Senin sebagai awal pekan, WEEK() mode 1
%VPekan (01-53) dengan Minggu sebagai awal pekan, digunakan dengan %X
%vWeek (01-53) dengan Senin sebagai awal pekan, digunakan dengan %x
%WNama Hari, Bahasa Inggris
%wHari dalam seminggu (0=Minggu, 6=Sabtu)
%XTahun dalam pekan dengan Minggu sebagai awal pekan, empat angka, digunakan dengan %V
%xTahun dalam pekan dengan Senin sebagai awal pekan, empat angka, digunakan dengan %v
%YTahun, empat angka
%yTahun, 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

BAGIKAN KE:

4 komentar:

  1. gan nanya.. kalau menampilkan data yang ada pada tabel berdasarkan Hari dalam bahasa indonesia, bagaimana Query nya

    BalasHapus
  2. webnya masih ada bug kak

    BalasHapus