以下は、SQLを使用して主要なRDBMSの日付から短い月の名前を返す方法を示す例です。
MySQL
MySQLにはDATE_FORMAT()
があります 日付から短い月の名前を返すために使用できる関数:
SELECT DATE_FORMAT('2030-02-01', '%b');
結果:
Feb
月の名前に使用される言語は、lc_time_names
の値によって制御されます システム変数。詳細については、MySQLで現在の接続のロケールを設定する方法を参照してください。
短い月の名前を返すためのその他のオプションについては、MySQLで日付から短い月の名前を取得する方法を参照してください。
SQL Server
SQLServerでこれを行うにはいくつかの方法があります。 1つの方法は、FORMAT()
を使用することです。 MMM
で機能する フォーマット文字列として
DECLARE @date datetime2 = '2030-08-01';
SELECT FORMAT(@date, 'MMM') AS 'FORMAT';
結果:
Aug
その他のオプションについては、SQLServerで日付から短い月の名前を取得する5つの方法を参照してください。
Oracle
Oracleで短い月の名前を取得するには、TO_CHAR(datetime)
を使用します MON
で機能する フォーマット要素:
SELECT TO_CHAR(DATE '2030-09-25', 'MON')
FROM DUAL;
結果:
SEP
結果の大文字化は、フォーマット文字列で使用される大文字化を反映します。詳細については、「Oracleの日付から短い月の名前を返す」を参照してください。
PostgreSQL
PostgreSQLにはTO_CHAR()
もあります Oracleと同様に機能する機能:
SELECT TO_CHAR(TIMESTAMP '2020-12-16 10:41:35', 'Mon');
結果:
Dec
詳細については、PostgreSQLでの短い月の名前の取得を参照してください。
MariaDB
MySQLと同様に、MariaDBにはDATE_FORMAT()
があります %b
を受け入れる関数 日付から短い月の名前を返すためのフォーマット文字列。
例:
SELECT DATE_FORMAT('2023-09-20', '%b');
結果:
Sep
MariaDBバージョンとMySQLバージョンのDATE_FORMAT()
の違いの1つ MariaDBは、ロケールを指定できる3番目の引数を受け入れます(MySQLは受け入れません)。これは、現在のセッションのロケールを変更することなく、MariaDBの関数内からロケールを指定できることを意味します。
詳細と例については、MariaDBの日付から短い月の名前を取得する方法を参照してください。