MySQLでは、DAY()
関数はDAYOFMONTH()
の同義語です 働き。日付から月の日を返すために使用されます。
このコンテキストでは、「月の日」は1〜31の値、またはゼロデイ部分のある日付の場合は0です。たとえば、 2020-05-03の日付を指定した場合 、DAY()
関数は3を返します 。
構文
構文は次のようになります:
DAY(date)
date
は、その月の日を返す日付の値です。
例
実例を示します。
SELECT DAY('2020-06-18') AS 'Result';
結果:
+--------+ | Result | +--------+ | 18 | +--------+
日の部分に先行ゼロがある場合、先行ゼロは結果から省略されます。例:
SELECT DAY('2020-06-07') AS 'Result';
結果:
+--------+ | Result | +--------+ | 7 | +--------+
データベースの例
これは、データベースに対してクエリを実行するときに列から日の部分を抽出する例です。
USE sakila; SELECT payment_date AS 'Date/Time', DAY(payment_date) AS 'Day of Month' FROM payment WHERE payment_id = 1;
結果:
+---------------------+--------------+ | Date/Time | Day of Month | +---------------------+--------------+ | 2005-05-25 11:30:37 | 25 | +---------------------+--------------+
現在の日付/時刻
これは、現在の日時から日の部分を抽出する例です(NOW()
を使用して返されます 関数)。
SELECT NOW(), DAY(NOW());
結果:
+---------------------+------------+ | NOW() | DAY(NOW()) | +---------------------+------------+ | 2018-06-25 18:30:44 | 25 | +---------------------+------------+
これを行う別の方法は、CURDATE()
を使用することです。 関数。日付のみを返します(時刻は返しません)。
SELECT CURDATE(), DAY(CURDATE());
結果:
+------------+----------------+ | CURDATE() | DAY(CURDATE()) | +------------+----------------+ | 2018-06-25 | 25 | +------------+----------------+