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

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

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

    MariaDBで特定の日付に日数を追加する8つの方法を次に示します。

    ADDDATE() 機能

    ADDDATE()から始めましょう 働き。

    この関数には2つの異なる構文があります。最初の構文は、日付に特定の日数を追加する簡潔な方法を提供します。

    例:

    SELECT ADDDATE('2021-05-01', 10);

    結果:

    +---------------------------+
    | ADDDATE('2021-05-01', 10) |
    +---------------------------+
    | 2021-05-11                |
    +---------------------------+

    この構文を使用して、2つの引数を提供します。最初の引数は日付で、2番目の引数はその日付に追加する日数です。

    ADDDATE() 関数–構文2

    ADDDATE() 関数には、より冗長な構文もあります。この構文により、日付に日を追加する方法をより明確にすることができます。

    例:

    SELECT ADDDATE('2021-05-01', INTERVAL 10 DAY);

    結果:

    +----------------------------------------+
    | ADDDATE('2021-05-01', INTERVAL 10 DAY) |
    +----------------------------------------+
    | 2021-05-11                             |
    +----------------------------------------+

    この場合、 INTERVALを使用します キーワード、日数、 DAY キーワード。

    INTERVAL キーワードは、 DATETIMEに時間間隔を加算または減算するために使用されます 、 DATE またはTIME 価値。日付に使用し、該当する日付/時刻の単位を使用して、日付に特定の日数を追加できます。この場合、日付/時刻の単位は DAYです。 、ただし、同じように簡単に MONTH にすることもできます 、 YEAR HOUR 、など、およびいくつかの複合ユニット。

    DATE_ADD() 機能

    DATE_ADD() 関数はADDDATE()と同じように機能します 詳細構文を使用する場合。実際、詳細な構文を使用する場合は、 ADDDATE() DATE_ADD()の同義語です 。

    例:

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

    結果:

    +-----------------------------------------+
    | DATE_ADD('2021-05-01', INTERVAL 10 DAY) |
    +-----------------------------------------+
    | 2021-05-11                              |
    +-----------------------------------------+

    SUBDATE() 関数–構文1

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

    例:

    SELECT SUBDATE('2021-05-01', -10);

    結果:

    +----------------------------+
    | SUBDATE('2021-05-01', -10) |
    +----------------------------+
    | 2021-05-11                 |
    +----------------------------+

    SUBDATE() 関数–構文2

    SUBDATE() 関数には、より詳細な構文もあります( ADDDATE()と同様です。 関数)。

    例:

    SELECT SUBDATE('2021-05-01', INTERVAL -10 DAY);

    結果:

    +-----------------------------------------+
    | SUBDATE('2021-05-01', INTERVAL -10 DAY) |
    +-----------------------------------------+
    | 2021-05-11                              |
    +-----------------------------------------+

    DATE_SUB() 機能

    DATE_SUB()を使用する例を次に示します。 機能:

    SELECT DATE_SUB('2021-05-01', INTERVAL -10 DAY);

    結果:

    +------------------------------------------+
    | DATE_SUB('2021-05-01', INTERVAL -10 DAY) |
    +------------------------------------------+
    | 2021-05-11                               |
    +------------------------------------------+

    + オペレーター

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

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

    例:

    SELECT '2021-05-01' + INTERVAL 10 DAY;

    結果:

    +--------------------------------+
    | '2021-05-01' + INTERVAL 10 DAY |
    +--------------------------------+
    | 2021-05-11                     |
    +--------------------------------+

    - オペレーター

    - 演算子を使用して、日付から金額を減算できます。ただし、負の数を引くと、正の数が日付に追加されます。

    SELECT '2021-05-01' - INTERVAL -10 DAY;

    結果:

    +---------------------------------+
    | '2021-05-01' - INTERVAL -10 DAY |
    +---------------------------------+
    | 2021-05-11                      |
    +---------------------------------+

    ボーナス: ADDTIME() 機能

    この記事には日付に日を追加する8つの方法が含まれていると言いましたが、ここにいくつかのボーナス機能があります。代わりに、この記事を「日時の値に日を追加する10の方法」と呼ぶべきだったのかもしれません。

    とにかく、 ADDTIME()を使用できます 日時式に日数を追加する関数。

    例:

    SELECT ADDTIME('2021-05-01 10:30:45', '1 0:0:0');

    結果:

    +-------------------------------------------+
    | ADDTIME('2021-05-01 10:30:45', '1 0:0:0') |
    +-------------------------------------------+
    | 2021-05-02 10:30:45                       |
    +-------------------------------------------+

    時間、分、秒など、他の時間単位を変更することもできます。

    または、切り替えて SUBTIME()を使用することもできます。 必要に応じて負の値を使用してください:

    SELECT SUBTIME('2021-05-01 10:30:45', '-1 0:0:0');

    結果:

    +--------------------------------------------+
    | SUBTIME('2021-05-01 10:30:45', '-1 0:0:0') |
    +--------------------------------------------+
    | 2021-05-02 10:30:45                        |
    +--------------------------------------------+

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

    上記の例では、日付に日数を追加していますが、同じ手法を使用して任意の日付/時刻の単位を追加できます。 DAYを使用します 日付/時刻の単位と同じですが、前述のように、 MONTHと同じくらい簡単にできます。 、 YEAR HOUR 、など、および任意の複合ユニット。

    上記の関数と演算子で使用できる日付/時刻単位の完全なリストについては、MariaDBの日付と時刻の単位を参照してください。


    1. 複合キーを使用したWHERE_INクエリ?

    2. MySQLフィールドの先頭と末尾の空白を削除するにはどうすればよいですか?

    3. SQLiteデータベースから画像を取得するにはどうすればよいですか?

    4. MariaDB JSON_LOOSE()の説明