sql >> データベース >  >> RDS >> MariaDB

MariaDBで日付に年を追加する6つの方法

    MariaDBは、特定の日付に1年または特定の年数を追加するいくつかの方法を提供します。たとえば、1年、10年、30年などを追加したい場合があります。

    MariaDBで日付に年を追加する6つの方法は次のとおりです。

    DATE_ADD() 機能

    DATE_ADD() 関数を使用すると、日付に金額を追加できます。たとえば、日数、週数、月数、年数などを追加できます。

    例:

    SELECT DATE_ADD('2021-05-01', INTERVAL 1 YEAR);

    結果:

    +-----------------------------------------+
    | DATE_ADD('2021-05-01', INTERVAL 1 YEAR) |
    +-----------------------------------------+
    | 2022-05-01                              |
    +-----------------------------------------+

    1年しかできないというルールはありません。複数年を追加できます。いずれにせよ、 YEAR キーワードは複数形のままです:

    SELECT DATE_ADD('2021-05-01', INTERVAL 10 YEAR);

    結果:

    +------------------------------------------+
    | DATE_ADD('2021-05-01', INTERVAL 10 YEAR) |
    +------------------------------------------+
    | 2031-05-01                               |
    +------------------------------------------+

    その単位の適切な数で別の日付/時刻単位を使用することも可能です。ただし、このアプローチは予期しない結果を招く可能性があるため、注意して使用する必要があります。

    例:

    SELECT 
        DATE_ADD('2021-05-01', INTERVAL 365 DAY) AS Days,
        DATE_ADD('2021-05-01', INTERVAL 52 WEEK) AS Weeks,
        DATE_ADD('2021-05-01', INTERVAL 12 MONTH) AS Months,
        DATE_ADD('2021-05-01', INTERVAL 1 YEAR) AS Years;

    結果:

    +------------+------------+------------+------------+
    | Days       | Weeks      | Months     | Years      |
    +------------+------------+------------+------------+
    | 2022-05-01 | 2022-04-30 | 2022-05-01 | 2022-05-01 |
    +------------+------------+------------+------------+

    この場合、52週間を追加すると、365日、12か月、1年を使用した場合とは異なる結果になります。

    日付を数年前に進めると、さらに矛盾が生じます:

    SELECT 
        DATE_ADD('2023-05-01', INTERVAL 365 DAY) AS Days,
        DATE_ADD('2023-05-01', INTERVAL 52 WEEK) AS Weeks,
        DATE_ADD('2023-05-01', INTERVAL 12 MONTH) AS Months,
        DATE_ADD('2023-05-01', INTERVAL 1 YEAR) AS Years;

    結果:

    +------------+------------+------------+------------+
    | Days       | Weeks      | Months     | Years      |
    +------------+------------+------------+------------+
    | 2024-04-30 | 2024-04-29 | 2024-05-01 | 2024-05-01 |
    +------------+------------+------------+------------+

    今回はMONTHを使用します およびYEAR 同じ結果を返しますが、 DAY およびWEEK 2つの異なる日付を返します。どちらもMONTHとは異なります。 およびYEAR 結果。

    ADDDATE() 機能

    日付に年を追加する別の方法は、 ADDDATE()を使用することです。 働き。この関数には2つの構文があります。 1つの構文では、日付に日数を追加できます。その他の構文は、 DATE_ADD()の場合と同じです。 上記の機能。この構文を使用する場合、 ADDDATE() DATE_ADD()の同義語です 。

    例:

    SELECT ADDDATE('2021-05-01', INTERVAL 1 YEAR);

    結果:

    +----------------------------------------+
    | ADDDATE('2021-05-01', INTERVAL 1 YEAR) |
    +----------------------------------------+
    | 2022-05-01                             |
    +----------------------------------------+

    DATE_SUB() 機能

    DATE_SUB() 関数を使用すると、減算できます 日付への金額。ただし、減算する負の値を指定すると、加算されます。 日付まで。

    例:

    SELECT DATE_SUB('2021-05-01', INTERVAL -1 YEAR);

    結果:

    +------------------------------------------+
    | DATE_SUB('2021-05-01', INTERVAL -1 YEAR) |
    +------------------------------------------+
    | 2022-05-01                               |
    +------------------------------------------+

    SUBDATE() 機能

    SUBDATE() 関数はDATE_SUB()の同義語です 次の構文を使用する場合。

    例:

    SELECT SUBDATE('2021-05-01', INTERVAL -1 YEAR);

    結果:

    +-----------------------------------------+
    | SUBDATE('2021-05-01', INTERVAL -1 YEAR) |
    +-----------------------------------------+
    | 2022-05-01                              |
    +-----------------------------------------+

    + オペレーター

    別のオプションは、 +を使用することです オペレーター。

    + 演算子は加算を実行するために使用され、日付に使用して、該当する日付/時刻の単位とともに、日付に特定の年数を追加できます。

    例:

    SELECT '2021-05-01' + INTERVAL 1 YEAR;

    結果:

    +--------------------------------+
    | '2021-05-01' + INTERVAL 1 YEAR |
    +--------------------------------+
    | 2022-05-01                     |
    +--------------------------------+

    - オペレーター

    - 演算子を使用して、日付から金額を減算できます。ただし、負の数を減算するために使用される場合、結果は日付に正の量が加算されます。

    SELECT '2021-05-01' - INTERVAL -1 YEAR;

    結果:

    +---------------------------------+
    | '2021-05-01' - INTERVAL -1 YEAR |
    +---------------------------------+
    | 2022-05-01                      |
    +---------------------------------+

    その他の日付と時刻の単位

    上記の例では、日付に年数を追加していますが、同じ手法を使用して任意の日付/時刻の単位を追加できます。上記の関数と演算子で使用できる日付/時刻単位の完全なリストについては、MariaDBの日付と時刻の単位を参照してください。


    1. PostgreSQLにutf8照合をインストールする

    2. データベースが高品質であるかどうかはどうすればわかりますか?

    3. ホスト(Windows)からVirtualBoxのOracleDBにアクセスする方法

    4. 画像をデータベースBLOBに保存します。 dbからPictureboxに取得