1. Pendahuluan
Dalam basis data MySQL, Anda akan sering menangani data tanggal dan waktu. Tanggal yang disimpan dalam basis data disimpan dalam format standar, tetapi saat menampilkannya kepada pengguna, Anda sering ingin memformat ulang agar lebih mudah dibaca. Di sinilah fungsi DATE_FORMAT menjadi berguna. Pada artikel ini, kami akan memperkenalkan cara menggunakan fungsi DATE_FORMAT dan berbagai opsi pemformatan, serta menjelaskan cara praktis menerapkannya melalui contoh nyata.
2. Ikhtisar Fungsi DATE_FORMAT
2.1 Apa Itu Fungsi DATE_FORMAT?
Fungsi DATE_FORMAT adalah fungsi MySQL yang digunakan untuk mengubah data tanggal menjadi format yang ditentukan. Fungsi ini dipakai ketika Anda ingin menampilkan tanggal dalam format sewenang‑wenang, bukan format default YYYY‑MM‑DD atau format datetime standar. Misalnya, jika Anda ingin menampilkan tanggal kepada pengguna dalam format seperti “Sep 16, 2024”, fungsi ini sangat membantu.
2.2 Sintaks Dasar
Sintaks dasar fungsi DATE_FORMAT adalah sebagai berikut.
DATE_FORMAT(date, format)
date: Data tanggal yang ingin Anda format.format: String yang menentukan format tanggal keluaran.
Mari lihat contoh spesifiknya:
SELECT DATE_FORMAT('2024-09-16', '%Y-%m-%d') AS formatted_date;
Query ini mengubah tanggal ‘2024-09-16’ menjadi format “2024-09-16” dan menampilkannya.

3. Parameter Format Tanggal
3.1 Daftar Penentu Format
Fungsi DATE_FORMAT mendukung banyak penentu format. Berikut adalah daftar yang paling umum digunakan:
%Y: Tahun 4 digit (misalnya, 2024)%y: Tahun 2 digit (misalnya, 24)%m: Bulan 2 digit (01 sampai 12)%c: Bulan (1 sampai 12)%d: Hari 2 digit (01 sampai 31)%e: Hari (1 sampai 31)%H: Jam dalam format 24‑jam (00 sampai 23)%hatau%I: Jam dalam format 12‑jam (01 sampai 12)%i: Menit (00 sampai 59)%s: Detik (00 sampai 59)%p: AM atau PM
3.2 Contoh Nyata
Mari lihat contoh konkret bagaimana penentu‑penentu ini memengaruhi output.
SELECT
DATE_FORMAT('2024-09-16 14:35:59', '%Y-%m-%d %H:%i:%s') AS full_format,
DATE_FORMAT('2024-09-16 14:35:59', '%b %d, %Y') AS us_format,
DATE_FORMAT('2024-09-16 14:35:59', '%d/%m/%Y') AS european_format,
DATE_FORMAT('2024-09-16 14:35:59', '%h:%i %p') AS twelve_hour_format;
Output dari query ini akan terlihat seperti berikut:
full_format: 2024-09-16 14:35:59us_format: Sep 16, 2024european_format: 16/09/2024twelve_hour_format: 02:35 PM
4. Kasus Penggunaan Praktis
4.1 Skenario 1: Pembuatan Laporan
Misalnya, saat membuat laporan bulanan di sebuah perusahaan, Anda mungkin ingin menampilkan tanggal dalam format “YYYY‑MM”. Query berikut memformat tanggal laporan untuk tujuan tersebut.
SELECT
DATE_FORMAT(sale_date, '%Y-%m') AS report_month,
SUM(sales) AS total_sales
FROM sales_data
GROUP BY report_month;
Query ini menghasilkan total penjualan bulanan dari data penjualan dalam format seperti “2024-09”.
4.2 Skenario 2: Antarmuka Pengguna
DATE_FORMAT juga berguna ketika Anda ingin menampilkan tanggal secara jelas kepada pengguna dalam aplikasi web. Misalnya, Anda dapat menggunakannya seperti ini saat menampilkan tanggal login terakhir pada halaman profil pengguna.
SELECT
user_name,
DATE_FORMAT(last_login, '%Y-%m-%d %H:%i') AS last_login_formatted
FROM users;
Ini akan menampilkan tanggal dan waktu login terakhir pengguna seperti “2024-09-16 14:35”.
4.3 Skenario 3: Optimasi Query
Dalam beberapa kasus, DATE_FORMAT juga dapat berguna untuk optimasi query basis data. Misalnya, Anda dapat menggunakan pemformatan saat mengekstrak data dalam rentang tanggal tertentu.
SELECT
*
FROM transactions
WHERE DATE_FORMAT(transaction_date, '%Y-%m') = '2024-09';
Query ini mengekstrak semua transaksi yang terjadi pada September 2024.
5. Catatan dan Praktik Terbaik untuk DATE_FORMAT
5.1 Pertimbangan Kinerja
Jika Anda menggunakan DATE_FORMAT secara sering, hal itu dapat memengaruhi kinerja. Khususnya, menerapkannya secara berulang pada dataset besar dapat meningkatkan waktu pemrosesan. Jika diperlukan, pertimbangkan untuk menyimpan tanggal yang sudah diformat sebelumnya atau memformatnya pada tingkat aplikasi.
5.2 Localization
Saat membangun sistem multibahasa menggunakan DATE_FORMAT, Anda harus memperhatikan lokalisasi. Karena format tampilan tanggal bervariasi menurut negara dan wilayah, Anda mungkin perlu mengubah format secara dinamis berdasarkan lokasi pengguna.
5.3 Consistent Formatting
Menggunakan format tanggal yang konsisten di seluruh sistem sangat penting untuk meningkatkan pengalaman pengguna. Misalnya, dengan menggunakan format yang sama di formulir input, bagian tampilan, dan laporan, Anda dapat menghindari kebingungan pengguna.
6. Summary
Fungsi DATE_FORMAT adalah alat yang kuat untuk memformat data tanggal secara fleksibel di MySQL. Dalam artikel ini, kami membahas penggunaan dasar, contoh praktis, dan catatan penting serta praktik terbaik. Dengan menggunakan fungsi ini secara efektif, Anda dapat menampilkan tanggal dengan cara yang lebih jelas dan ramah pengguna. Sebagai langkah selanjutnya, kami merekomendasikan untuk mempelajari operasi tanggal dan waktu yang lebih lanjut.
7. Reference Resources
- Dokumentasi Resmi MySQL: DATE_FORMAT
- Karena artikel terkait dan tutorial diperbarui secara berkala, pastikan untuk memeriksa dokumentasi resmi dan blog teknis secara rutin.
Kami berharap artikel ini membantu Anda memahami dan menggunakan fungsi DATE_FORMAT secara efektif.


