MariaDBで日付演算を実行する方法はたくさんあります。これには、日付または日時の値から特定の日付部分の特定の数を加算または減算することが含まれます。
この記事では、MariaDBの日時の値に1時間を追加する8つの方法を紹介します。
DATE_ADD()
機能
DATE_ADD()
関数を使用すると、日付または日時式に金額を追加できます。これには、時間などの時間部分の追加が含まれます。
例:
SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR);
結果:
+--------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 HOUR) | +--------------------------------------------------+ | 2021-05-01 11:00:00 | +--------------------------------------------------+
この場合、日時式に1時間を追加しました。
日付だけを入力するとどうなりますか:
SELECT DATE_ADD('2021-05-01', INTERVAL 1 HOUR);
結果:
+-----------------------------------------+ | DATE_ADD('2021-05-01', INTERVAL 1 HOUR) | +-----------------------------------------+ | 2021-05-01 01:00:00 | +-----------------------------------------+
時間の部分が結果に追加され、最初の時刻は 00:00:00
であると想定されます。 。
1時間以上追加する必要がある場合は、 1
の代わりにその番号を使用してください 。 HOUR
に注意してください キーワードは関係なく複数形のままです:
SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 2 HOUR);
結果:
+--------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL 2 HOUR) | +--------------------------------------------------+ | 2021-05-01 12:00:00 | +--------------------------------------------------+
その単位の適切な数で別の日付/時刻単位を使用することも可能です。したがって、60や120などの特定の分数を指定できます。
例:
SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 60 MINUTE);
結果:
+-----------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL 60 MINUTE) | +-----------------------------------------------------+ | 2021-05-01 11:00:00 | +-----------------------------------------------------+
複合日付/時刻単位を使用して、複数の単位を追加することもできます。たとえば、1時間30分を追加したい場合は、次のように実行できます。
SELECT
DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' HOUR_MINUTE);
結果:
+--------------------------------------------------------------+ | DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' HOUR_MINUTE) | +--------------------------------------------------------------+ | 2021-05-01 11:30:00 | +--------------------------------------------------------------+
日付/時刻単位の完全なリストについては、MariaDBの日付と時刻の単位を参照してください。
ADDDATE()
機能
日時式に時間を追加する別の方法は、 ADDDATE()
を使用することです。 働き。この関数には2つの構文があります:
- 1つの構文を使用すると、日付に日数を追加できますが、これはここで行っていることではありません(24時間を追加する予定がない場合)。
- 他の構文は、
DATE_ADD()
と同じです。 上記の機能。この構文を使用する場合、ADDDATE()
DATE_ADD()
の同義語です 。
例:
SELECT ADDDATE('2021-05-01 10:00:00', INTERVAL 1 HOUR);
結果:
+-------------------------------------------------+ | ADDDATE('2021-05-01 10:00:00', INTERVAL 1 HOUR) | +-------------------------------------------------+ | 2021-05-01 11:00:00 | +-------------------------------------------------+
DATE_SUB()
機能
DATE_SUB()
関数を使用すると、減算できます 日付への金額。ただし、減算する負の値を指定すると、加算されます。 日付まで。
例:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL -1 HOUR);
結果:
+---------------------------------------------------+ | DATE_SUB('2021-05-01 10:00:00', INTERVAL -1 HOUR) | +---------------------------------------------------+ | 2021-05-01 11:00:00 | +---------------------------------------------------+
SUBDATE()
機能
SUBDATE()
関数はDATE_SUB()
の同義語です 次の構文を使用する場合。
例:
SELECT SUBDATE('2021-05-01 10:00:00', INTERVAL -1 HOUR);
結果:
+--------------------------------------------------+ | SUBDATE('2021-05-01 10:00:00', INTERVAL -1 HOUR) | +--------------------------------------------------+ | 2021-05-01 11:00:00 | +--------------------------------------------------+
+
オペレーター
別のオプションは、 +
を使用することです オペレーター。
+
演算子は加算を実行するために使用され、日付に使用して、該当する日付/時刻の単位とともに、日付に特定の時間を追加することができます。
例:
SELECT '2021-05-01 10:00:00' + INTERVAL 1 HOUR;
結果:
+-----------------------------------------+ | '2021-05-01 10:00:00' + INTERVAL 1 HOUR | +-----------------------------------------+ | 2021-05-01 11:00:00 | +-----------------------------------------+
-コード> オペレーター
-コード> 演算子を使用して、日付から金額を減算できます。ただし、負の数を減算するために使用される場合、結果は日付に正の量が加算されます。
SELECT '2021-05-01 10:00:00' - INTERVAL -1 HOUR;
結果:
+------------------------------------------+ | '2021-05-01 10:00:00' - INTERVAL -1 HOUR | +------------------------------------------+ | 2021-05-01 11:00:00 | +------------------------------------------+
ADDTIME()
機能
ADDTIME()
を使用できます 日時式に時間数を追加する関数。
例:
SELECT ADDTIME('2021-05-01 10:30:45', '01:0:0');
結果:
+------------------------------------------+ | ADDTIME('2021-05-01 10:30:45', '01:0:0') | +------------------------------------------+ | 2021-05-01 11:30:45 | +------------------------------------------+
この関数の利点の1つは、分、秒などの他の時間単位も変更できることです。
SUBTIME()
機能
または、切り替えて SUBTIME()
を使用することもできます。 必要に応じて負の値を使用してください:
SELECT SUBTIME('2021-05-01 10:30:45', '-01:0:0');
結果:
+-------------------------------------------+ | SUBTIME('2021-05-01 10:30:45', '-01:0:0') | +-------------------------------------------+ | 2021-05-01 11:30:45 | +-------------------------------------------+
その他の日付と時刻の単位
上記の例では、日時の値に時間数が追加されていますが、同じ手法を使用して任意の日時の単位を追加できます。上記の関数と演算子で使用できる日付/時刻単位の完全なリストについては、MariaDBの日付と時刻の単位を参照してください。