MariaDBは、日付の算術演算を実行するいくつかの方法を提供します。これには、特定の日付から1日(または多くの日)を加算または減算することが含まれます。
これは、MariaDBの日付から1日を引く例です。
SUBDATE() 機能
SUBDATE() 関数を使用すると、日付から特定の日数を減算できます。
これを行う最も簡単な方法は、日付に続けて減算する日数を指定することです。
例:
SELECT SUBDATE('2021-05-21', 1); 結果:
+--------------------------+
| SUBDATE('2021-05-21', 1) |
+--------------------------+
| 2021-05-20 |
+--------------------------+ 複数日
1日以上引く必要がある場合は、1の代わりにその数値を使用してください 。
SELECT SUBDATE('2021-05-01', 30); 結果:
+---------------------------+
| SUBDATE('2021-05-01', 30) |
+---------------------------+
| 2021-04-01 |
+---------------------------+ この場合、日付から30日を引いた日付を返しました。これにより、日付も前月に戻りました。
より詳細な構文
SUBDATE() 関数には、より詳細な構文もあり、日付から減算する単位を指定できます。たとえば、日、週、月、年などを指定できます。
SELECT SUBDATE('2021-05-01', INTERVAL 1 DAY); 結果:
+---------------------------------------+
| SUBDATE('2021-05-01', INTERVAL 1 DAY) |
+---------------------------------------+
| 2021-04-30 |
+---------------------------------------+>
複数日を引く場合、DAY キーワードは複数形のままです:
SELECT SUBDATE('2021-05-01', INTERVAL 10 DAY); 結果:
+----------------------------------------+
| SUBDATE('2021-05-01', INTERVAL 10 DAY) |
+----------------------------------------+
| 2021-04-21 |
+----------------------------------------+ 減算演算子(- )
日付から日を減算する別の方法は、減算演算子(-)を使用することです。 )、マイナス演算子とも呼ばれます。
例:
SELECT '2021-05-01' - INTERVAL 90 DAY; 結果:
+--------------------------------+ | '2021-05-01' - INTERVAL 90 DAY | +--------------------------------+ | 2021-01-31 | +--------------------------------+
加算演算子(+ )
または、加算演算子(+)を使用することもできます。 )負の金額と一緒に。
例:
SELECT '2021-05-01' + INTERVAL -90 DAY; 結果:
+---------------------------------+ | '2021-05-01' + INTERVAL -90 DAY | +---------------------------------+ | 2021-01-31 | +---------------------------------+
日付から日を引く他の方法
日付から1日以上を引くために使用できる他のアプローチは次のとおりです。
-
DATE_SUB()関数(SUBDATE()上記の例で使用されている関数は、DATE_SUB()の同義語です。 同じ構文で使用した場合) -
DATE_ADD()関数(負の金額を指定すると、日付からその金額が差し引かれます)。 -
ADDDATE()関数(負の金額を指定すると、日付からその金額が差し引かれます)。