MariaDB memiliki beberapa fungsi yang memungkinkan Anda mengekstrak berbagai bagian tanggal dan waktu dari nilai tanggal/waktu. Anda dapat menggunakan ini untuk memisahkan setiap komponen tanggal/waktu ke dalam kolomnya sendiri jika diperlukan.
Di bawah ini adalah tiga cara untuk mengekstrak tahun, bulan, dan hari dari nilai tanggal di MariaDB.
YEAR()
, MONTH()
, dan DAY()
Fungsi
YEAR()
, MONTH()
, dan DAY()
fungsi mengekstrak tahun, bulan, dan hari dari tanggal atau nilai datetime masing-masing.
Berikut adalah contoh penggunaan fungsi ini untuk mengembalikan setiap komponen tanggal di kolomnya sendiri:
SELECT
YEAR('2025-08-30') AS "Year",
MONTH('2025-08-30') AS "Month",
DAY('2025-08-30') AS "Day";
Hasil:
+------+-------+------+ | Year | Month | Day | +------+-------+------+ | 2025 | 8 | 30 | +------+-------+------+
DAY()
function sebenarnya adalah sinonim untuk DAYOFMONTH()
, jadi salah satunya akan mengembalikan hasil yang sama.
Ada juga WEEKDAY()
fungsi, sebuah DAYOFWEEK()
fungsi, sebuah DAYOFYEAR()
fungsi, dan DAYNAME()
fungsi, yang masing-masing mengembalikan representasi hari yang berbeda.
Plus ada MONTHNAME()
fungsi yang mengembalikan nama bulan, bukan nomornya.
Berikut contoh lain yang menyertakan fungsi tersebut:
SELECT
YEAR('2025-08-30') AS "YEAR",
MONTH('2025-08-30') AS "MONTH",
MONTHNAME('2025-08-30') AS "MONTHNAME",
DAY('2025-08-30') AS "DAY",
DAYOFMONTH('2025-08-30') AS "DAYOFMONTH",
WEEKDAY('2025-08-30') AS "WEEKDAY",
DAYOFWEEK('2025-08-30') AS "DAYOFWEEK",
DAYOFYEAR('2025-08-30') AS "DAYOFYEAR",
DAYNAME('2025-08-30') AS "DAYNAME";
Hasil (menggunakan keluaran vertikal):
YEAR: 2025 MONTH: 8 MONTHNAME: August DAY: 30 DAYOFMONTH: 30 WEEKDAY: 5 DAYOFWEEK: 7 DAYOFYEAR: 242 DAYNAME: Saturday
Anda juga dapat menggunakan fungsi seperti WEEK()
untuk mengembalikan nomor minggu, dan QUARTER()
untuk mengembalikan kuartal.
Contoh:
SELECT
WEEK('2025-08-30') AS "Week",
QUARTER('2025-08-30') AS "Quarter";
Hasil:
+------+---------+ | Week | Quarter | +------+---------+ | 34 | 3 | +------+---------+
WEEK()
function menerima argumen kedua yang memungkinkan Anda menentukan mode. Ini dapat mengubah nomor minggu yang dihasilkan, tergantung pada tanggal sebenarnya. Lihat Bagaimana WEEK()
Bekerja di MariaDB untuk informasi lebih lanjut dan contoh.
EXTRACT()
Fungsi
EXTRACT()
fungsi memungkinkan Anda untuk mengekstrak unit tertentu dari nilai tanggal/waktu. Oleh karena itu, Anda dapat menggunakannya untuk mengekstrak tahun, bulan, dan hari dari tanggal (serta minggu dan kuartal jika diperlukan).
Contoh:
SELECT
EXTRACT(YEAR FROM '2023-03-12') AS "Year",
EXTRACT(MONTH FROM '2023-03-12') AS "Month",
EXTRACT(DAY FROM '2023-03-12') AS "Day",
EXTRACT(WEEK FROM '2023-03-12') AS "Week",
EXTRACT(QUARTER FROM '2023-03-12') AS "Quarter";
Hasil:
+------+-------+------+------+---------+ | Year | Month | Day | Week | Quarter | +------+-------+------+------+---------+ | 2023 | 3 | 12 | 11 | 1 | +------+-------+------+------+---------+
DATE_FORMAT()
Fungsi
DATE_FORMAT()
fungsi memungkinkan Anda untuk memformat tanggal atau nilai datetime berdasarkan string format. String format menentukan bagaimana tanggal/waktu harus diformat.
Oleh karena itu, kita dapat menggunakan fungsi ini untuk menampilkan tahun, bulan, hari, dan minggu dari suatu tanggal.
Contoh:
SELECT
DATE_FORMAT('2035-12-08', '%Y') AS "Year",
DATE_FORMAT('2035-12-08', '%m') AS "Month",
DATE_FORMAT('2035-12-08', '%d') AS "Day",
DATE_FORMAT('2035-12-08', '%U') AS "Week";
Hasil:
+------+-------+------+------+ | Year | Month | Day | Week | +------+-------+------+------+ | 2035 | 12 | 08 | 48 | +------+-------+------+------+
Ada beberapa kemungkinan penentu format untuk setiap bagian tanggal. Setiap bagian tanggal dapat mengembalikan nilai yang berbeda, tergantung pada penentu format aktual yang disediakan. Misalnya, Anda dapat mengembalikan nama bulan penuh menggunakan %M
bukannya %m
.
Lihat MariaDB Format Strings untuk daftar lengkap format string/specifier yang dapat digunakan dengan DATE_FORMAT()
.