Pada MySQL, untuk penulisan tanggal juga terdapat format tersendiri. Hal ini juga berpengaruh ketika kita akan melakukan pencarian data berdasarkan tanggal. Ataupun memangkas data tanggal dan jam menjadi tanggal saja. Untuk itu, kita harus mengubah format penulisan tersebut menjadi date. Show Baca juga :
Nah, berikut adalah format yang harus kamu ketahui untuk penulisan pada query MySQL. FormatDescription%aNama kerja disingkat (Sun ke Sat)%bNama bulan disingkat (Jan ke Dec)%cBulan dalam angka (0 ke 12)%DUrutan tanggal sufix (1st, 2nd, 3rd, …)%dTanggal dalam bulan numeric (01 ke 31)%eHari dalam bulan dengan angka (0 ke 31)%fMicroseconds (000000 to 999999)%HWaktu (00 to 23)%hJam (00 to 12)%IJam (00 to 12)%iMenit (00 to 59)%jUrutan hari dalam setahun (001 to 366)%kFormat 24 jam (0 to 23)%lFormat 12 jam (1 to 12)%MNama bulan full (January to December)%mBulan dalam angka (00 to 12)%pAM atau PM%rWaktu dalam 12 jam AM atau PM format (hh:mm:ss AM/PM)%SDetik (00 to 59)%sDetik (00 to 59)%TWaktu format 24 jam (hh:mm:ss)%UPekan dimana Sunday hari pertama dalam pekan (00 ke 53)%uPekan dimana Monday hari pertama dalam pekan (00 ke 53)%VPekan dimana Sunday hari pertama dalam pekan (01 ke 53). Gunakan %X%vPekan dimana Monday hari pertama dalam pekan (01 to 53). Gunakan %x%WNama hari (Sunday hingga Saturday)%wHari dalam pekan dimana Sunday=0 dan Saturday=6%XTahun untuk pekan di mana hari Sunday adalah hari pertama dalam pekan. Gunakan %V%xTahun untuk pekan di mana Monday adalah hari pertama dalam pekan. Gunakan %v%YTahun 4 digit angka%yTahun 2 digit angkaTable format tanggalPada format di atas, sekarang kita akan mencoba salah satunya dengan query berikut ini :-- untuk menentukan tahun SELECT DATE_FORMAT("2017-06-15", "%Y"); Kamu juga dapat mencoba format lainnya sesuai dengan tabel di atas. Nah, demikanlah Date Format pada Query MySQL yang wajib kita ketahui. Semoga bermanfaat. Pengurangan tanggal maksudnya adalah untuk menghitung mundur, jatuh tanggal berapa misal 10 hari sebelum tanggal tertentu/sekarang. Adapun fungsi untuk menghitungnya adalah : SUBDATE(date,INTERVAL expr unit), SUBDATE(expr,days) Contoh :
Penjelasan : Atau
Mengubah Format TanggalFormat tampilan tanggal di MySQL umumnya tahun-bulan-tanggal, nah biasanya kebiasaan kita tanggal formatnya adalah tanggal-bulan-tahun. Nah untuk membuat tampilan ini telah tersedia fungsi STR_TO_DATE(). STR_TO_DATE(str,format) Contoh:
%W : hari dalam bahasa Inggris Contoh berkutnya :
Untuk lebih lanjut penulisan format tanggal dan waktu seperti pada tabel berkut : Hasil pengujian
Penjelasan: Contoh Kasus Menghitung Jam Kerja PegawaiPerhitungan jam kerja pegawai biasanya digunakan untuk sistem presensi. Ada permasalahan khusus jika jam datang dan jam pulang tanggalnya beda atau hari yang berbeda. Sebagai contoh untuk pegawai satpam misalnya untuk shift kerja yang malam biasanya datang jam 23.00 malam, dan pulang besok pagi jam 07.00, dengan demikian untuk menghitung jam kerjanya jadi negatif. Contoh: CREATE TABLE pegewai (NIP char(4), ambahkan Rekaman sebagai berkut : INSERT INTO PEGAWAI VALUES(‘1001′,’Adel Untung’,’Staff’); ); CREATE TABLE `absensi` ( Tambahkan isi rekaman seperti tabel berkut : insert into absensi(NIP,JAM_DTG,JAM_PLG,shift) Presensi datang ‘1’);Hasilnya : Presensi PulangUPDATE absensi SET JAM_PLG=NOW() Hasilnya : Penjelasan : Hanya mengubah jam pulang saja dengan kunci pencarian seperti perintah berikut : R(NOW(),1,10); Menampilkan Presensi semua pegawai tanggal ‘2009-10-17’’SELECT * FROM ABSENSI WHERE SUBSTR(JAM_DTG,1,10)=’2009-10-17’ ; Penjelasan :SUBSTR(JAM_DTG,1,10)=’2009 -10-17′: adalah untuk membaca tanggalnya saja sebab yang terekam pada field JAM_DTG tanggal dan jam panjang fieldnya 20 digit.Menampilkan presensi semua pegawai tanggal ‘2009-10-17′ dangan menghitung jumlah jam perhari. SELECT nip,jam_dtg,jam_plg, Hasil keluaran : Penjalasan: adalah untuk mengurangi tanggal jam pulang dengan tanggal jam datang hasilnya jam:menit:detikMenampilkan presensi semua pegawai tanggal ‘2009-10-17′ sampai dengan ‘2007-10-19’ untuk pegawai dengan NIP=’1001’ dan menghitung jumlah jam perhari. SELECT nip,jam_dtg,jam_plg, Hasil keluaran : Menampilkan presensi jumlah jam kerja semua pegawai periode tanggal ‘2009-10-17′ sampai dengan ‘2007-10-19’SELECT nip, SUM(time_to_Sec(TIMEDIFF(jam_plg,jam_dtg))) as detik, Hasil keluaran: Penjelasan:TIMEDIFF(jam_plg,jam_dtg) fungsi jam pulang dikurangi jam datang Menampilkan jam kerja beserta nama Untuk perintah yang menggunakan GROUP BY NIP tidak bisa direlasikan secara langsung, karena perintah SELECT akan mengambil seluruh rekaman yang dipenuhi, dengan ada perintah GROUP BY NIP akan dikelompokan perpegawai, sedang rekaman satu pegawai memiliki sejumlah rekaman. Oleh karna itu perlu dibuat fungsi untuk memabaca nama. |