Berikut adalah tiga cara untuk mengembalikan nama bulan dari tanggal di MariaDB.
MONTHNAME()
Fungsi
MONTHNAME()
fungsi dirancang khusus untuk mengembalikan nama bulan dari tanggal. Untuk melakukan ini, berikan tanggal ke fungsi saat memanggilnya. Nama bulan penuh akan dikembalikan.
Contoh:
SELECT MONTHNAME('2021-08-19');
Hasil:
+-------------------------+ | MONTHNAME('2021-08-19') | +-------------------------+ | August | +-------------------------+
Bahasa yang digunakan untuk nama bulan dikendalikan oleh nilai lc_time_names
variabel sistem. Lihat MONTHNAME()
untuk contoh bagaimana hal ini memengaruhi output.
DATE_FORMAT()
Fungsi
DATE_FORMAT()
fungsi memformat tanggal tertentu ke dalam format tertentu. Anda menentukan tanggal dan format saat Anda memanggil fungsi.
Anda dapat mengembalikan nama bulan penuh dengan mengirimkan %M
sebagai format string.
Contoh:
SELECT DATE_FORMAT('2021-08-19', '%M');
Hasil:
+---------------------------------+ | DATE_FORMAT('2021-08-19', '%M') | +---------------------------------+ | August | +---------------------------------+
Seperti MONTHNAME()
, bahasa yang digunakan untuk nama bulan dikontrol oleh nilai lc_time_names
variabel sistem. Namun, DATE_FORMAT()
function menerima argumen ketiga opsional yang memungkinkan Anda menentukan lokal.
Berikut ini contoh menentukan lokal:
SELECT DATE_FORMAT('2021-08-19', '%M', 'ca_ES');
Hasil:
+------------------------------------------+ | DATE_FORMAT('2021-08-19', '%M', 'ca_ES') | +------------------------------------------+ | agost | +------------------------------------------+
Nama Bulan Pendek
Melewati %b
ke DATE_FORMAT()
fungsi mengembalikan nama bulan pendek.
Contoh:
SELECT DATE_FORMAT('2021-08-19', '%b');
Hasil:
+---------------------------------+ | DATE_FORMAT('2021-08-19', '%b') | +---------------------------------+ | Aug | +---------------------------------+
Ini dapat direplikasi dengan MONTHNAME()
fungsi dengan menggunakan LEFT()
untuk mengambil 3 karakter pertama dari nama bulan.
Contoh:
SELECT LEFT(MONTHNAME('2021-08-19'), 3);
Hasil:
+----------------------------------+ | LEFT(MONTHNAME('2021-08-19'), 3) | +----------------------------------+ | Aug | +----------------------------------+
Konsep yang sama dapat dicapai dengan mengonversi hasil MONTHNAME()
ke tipe data tiga karakter dengan fungsi seperti CAST()
.
Namun, sementara pendekatan ini bekerja di en_US
, itu mungkin tidak selalu berfungsi dalam bahasa lain. Misalnya:
SET lc_time_names = 'th_TH';
SELECT
DATE_FORMAT('2021-08-19', '%b') AS "Short 1",
LEFT(MONTHNAME('2021-08-19'), 3) AS "Short 2",
MONTHNAME('2021-08-19') AS "Full";
Hasil:
+----------+-----------+-----------------------+ | Short 1 | Short 2 | Full | +----------+-----------+-----------------------+ | ส.ค. | สิง | สิงหาคม | +----------+-----------+-----------------------+