MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Cara Mendapatkan Nama Bulan Pendek dari Tanggal di MariaDB

Di MariaDB, Anda dapat menggunakan DATE_FORMAT() berfungsi untuk mengembalikan berbagai bagian tanggal dari tanggal. Salah satu hal yang dapat Anda kembalikan adalah nama bulan yang pendek. Misalnya Nov atau Dec (bukan November atau December ).

Penentu Format “Nama Bulan Pendek” (%b )

Kunci untuk mengembalikan nama bulan pendek saat menggunakan DATE_FORMAT() fungsinya adalah menggunakan penentu format yang berlaku.

Di MariaDB, penentu format untuk nama bulan pendek adalah:%b

Contoh

Berikut ini contoh untuk didemonstrasikan:

SELECT DATE_FORMAT('2023-12-25', '%b');

Hasil:

+---------------------------------+
| DATE_FORMAT('2023-12-25', '%b') |
+---------------------------------+
| Dec                             |
+---------------------------------+

Berikut ini contoh lain yang berjalan melalui berbagai bulan dalam setahun:

SELECT 
    DATE_FORMAT('2023-01-25', '%b') AS "1",
    DATE_FORMAT('2023-02-25', '%b') AS "2",
    DATE_FORMAT('2023-03-25', '%b') AS "3",
    DATE_FORMAT('2023-04-25', '%b') AS "4",
    DATE_FORMAT('2023-05-25', '%b') AS "5",
    DATE_FORMAT('2023-06-25', '%b') AS "6",
    DATE_FORMAT('2023-07-25', '%b') AS "7",
    DATE_FORMAT('2023-08-25', '%b') AS "8",
    DATE_FORMAT('2023-09-25', '%b') AS "9",
    DATE_FORMAT('2023-10-25', '%b') AS "10",
    DATE_FORMAT('2023-11-25', '%b') AS "11",
    DATE_FORMAT('2023-12-25', '%b') AS "12";

Hasil (menggunakan keluaran vertikal):

 1: Jan
 2: Feb
 3: Mar
 4: Apr
 5: May
 6: Jun
 7: Jul
 8: Aug
 9: Sep
10: Oct
11: Nov
12: Dec

Anda juga dapat mengembalikan unit tanggal dan waktu lainnya, tetapi artikel ini secara khusus tentang mengembalikan nama bulan pendek. Lihat String Format MariaDB untuk daftar penentu format yang dapat digunakan dengan DATE_FORMAT() .

Pendekatan Lain

Ada cara lain untuk mendapatkan nama bulan pendek dari tanggal yang melibatkan pemotongan bagian pertama bulan itu.

Namun, ini bisa lebih rentan terhadap kesalahan daripada metode di atas (ditambah lebih berbelit-belit). Anda bisa mendapatkan beberapa hasil yang tidak terduga saat menggunakan metode ini, terutama saat bekerja dengan bahasa yang berbeda.

Berikut adalah beberapa contoh untuk menunjukkan apa yang saya maksud.

Alih-alih menggunakan %b penentu format seperti yang kita lakukan pada contoh sebelumnya, kita dapat menggunakan %M format specifier untuk mengembalikan nama bulan penuh, lalu mengembalikan hasil yang dipersingkat dengan fungsi seperti LEFT() .

Contoh:

SELECT 
    DATE_FORMAT('2023-10-25', '%M') AS Full,
    LEFT(DATE_FORMAT('2023-10-25', '%M'), 3) AS Short;

Hasil:

+---------+-------+
| Full    | Short |
+---------+-------+
| October | Oct   |
+---------+-------+

Sebagai alternatif, kita dapat menggunakan fungsi seperti CAST() untuk mengkonversi ke tipe data dengan hanya tiga karakter, seperti ini:

SELECT 
    DATE_FORMAT('2023-10-25', '%M') AS Full,
    CAST(DATE_FORMAT('2023-10-25', '%M') AS CHAR(3)) AS Short;

Hasil:

+---------+-------+
| Full    | Short |
+---------+-------+
| October | Oct   |
+---------+-------+

Ini berfungsi dengan baik ketika bekerja dengan bahasa Inggris (dan mungkin beberapa bahasa lain). Tapi mari kita lihat apa yang terjadi saat kita beralih ke bahasa lain – misalnya, bahasa Thailand:

SELECT 
    DATE_FORMAT('2023-10-25', '%M', 'th_TH') AS Full,
    LEFT(DATE_FORMAT('2023-10-25', '%M', 'th_TH'), 3) AS Short;

Hasil:

+--------------------+-----------+
| Full               | Short     |
+--------------------+-----------+
| ตุลาคม              | ตุล        |
+--------------------+-----------+

Namun, inilah yang terjadi saat kita menggunakan %b penentu format untuk mengembalikan nama bulan pendek:

SELECT 
    DATE_FORMAT('2023-10-25', '%M', 'th_TH') AS Full,
    DATE_FORMAT('2023-10-25', '%b', 'th_TH') AS Short;

Hasil:

+--------------------+----------+
| Full               | Short    |
+--------------------+----------+
| ตุลาคม              | ต.ค.     |
+--------------------+----------+

Ini mengembalikan hasil yang berbeda.

Jadi saya sarankan menggunakan %b penentu format bila memungkinkan.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 11 Fungsi untuk Mendapatkan Hari, Bulan, dan Tahun dari Tanggal di MariaDB

  2. Bagaimana MAKEDATE() Bekerja di MariaDB

  3. Basis data pembandingan 101 - bagian 1

  4. Migrasi dari Oracle Database ke MariaDB - Yang Harus Anda Ketahui

  5. Bagaimana LOG() Bekerja di MariaDB