MariaDBでは、MONTH()
は、指定された日付式から月を返す組み込みの日付と時刻の関数です。
月を抽出する日付である1つの引数を受け入れます。
月を1
の範囲の数値として返します 12
へ 1月から12月まで。日付の月の部分がゼロの場合(例:0000-00-00
または2025-00-00
)、結果は0
です。 。
構文
構文は次のようになります:
MONTH(date)
date
月を取得する日付式です。
例
次に例を示します:
SELECT MONTH('2030-08-01');
結果:
+---------------------+ | MONTH('2030-08-01') | +---------------------+ | 8 | +---------------------+
日時の値
日時の値でも機能します:
SELECT MONTH('2030-08-01 10:30:45');
結果:
+------------------------------+ | MONTH('2030-08-01 10:30:45') | +------------------------------+ | 8 | +------------------------------+
ゼロ月
ゼロか月は0
になります 。
例:
SELECT MONTH('2030-00-00');
結果:
+---------------------+ | MONTH('2030-00-00') | +---------------------+ | 0 | +---------------------+
数値日付
日付として意味がある限り、日付を数値として渡すこともできます。
例
SELECT MONTH(20301125);
結果:
+-----------------+ | MONTH(20301125) | +-----------------+ | 11 | +-----------------+
または、次の場合でも(2桁の年を使用):
SELECT MONTH(301125);
結果:
+---------------+ | MONTH(301125) | +---------------+ | 11 | +---------------+
しかし、それは日付として意味をなさなければなりません。日の部分を無効な日に増やすと、次のようになります。
SELECT MONTH(20301135);
結果:
+-----------------+ | MONTH(20301135) | +-----------------+ | NULL | +-----------------+
その他の区切り文字
日付には他の区切り文字を使用できます。 MariaDBは、日付の区切り文字に関しては非常に寛容です。いくつかの有効な例を次に示します。
SELECT
MONTH('2030/06/25'),
MONTH('2030,06,25'),
MONTH('2030:06:25'),
MONTH('2030;06!25');
結果(垂直出力を使用):
MONTH('2030/06/25'): 6 MONTH('2030,06,25'): 6 MONTH('2030:06:25'): 6 MONTH('2030;06!25'): 6
現在の日付
NOW()
を渡すことができます 現在の日付を使用する日時引数として:
SELECT
NOW(),
MONTH(NOW());
結果:
+---------------------+--------------+ | NOW() | MONTH(NOW()) | +---------------------+--------------+ | 2021-05-16 15:00:06 | 5 | +---------------------+--------------+
無効な引数
無効な引数が渡されると、MONTH()
null
を返します :
SELECT MONTH('2030-65-78');
結果:
+---------------------+ | MONTH('2030-65-78') | +---------------------+ | NULL | +---------------------+
引数がありません
MONTH()
の呼び出し 引数の数が間違っているか、引数を渡さないと、エラーが発生します:
SELECT MONTH();
結果:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1
そして別の例:
SELECT MONTH('2030-12-10', '2031-12-10');
結果:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' '2031-12-10')' at line 1