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

ADDDATE()の例– MySQL

    MySQLでは、ADDDATE()を使用できます 指定された時間を日付に追加する関数。たとえば、これを使用して、特定の日付に10日を追加できます。日、週、月、四半期、年などを追加するかどうかを指定できます。秒、マイクロ秒などの時間値を追加することもできます。

    ADDDATE() 関数はDATE_ADD()の同義語です 以下にリストされている最初の構文を使用する場合、関数(どちらも同じことを行います)。

    この記事には、ADDDATE()の使用法を示す例が含まれています 機能。

    構文

    この関数は、次の2つの方法で使用できます。

    ADDDATE(date,INTERVAL expr unit)

    または

    ADDDATE(expr,days)

    例1-最初の構文

    構文の最初の形式を使用する例を次に示します。

    SELECT ADDDATE('2018-12-01', INTERVAL 2 DAY) AS Result;

    結果:

    +------------+
    | Result     |
    +------------+
    | 2018-12-03 |
    +------------+

    この例では、最初の引数で指定された日付に2日が追加されます。

    例2–2番目の構文

    この例は、次のように書き直すことができます。

    SELECT ADDDATE('2018-12-01', 2) AS Result;

    結果:

    +------------+
    | Result     |
    +------------+
    | 2018-12-03 |
    +------------+

    これは、構文の2番目の形式を使用します。 2番目の引数は、最初の引数で指定された日付に追加する日数を表す整数です。したがって、明らかに、このフォームは、日数で金額を指定する場合にのみ適しています。

    ADDDATE()に注意してください DATE_ADD()の同義語です 最初の構文が使用されている場合のみ。 2番目の構文は、ADDDATE()でのみ使用できます。 。

    例3–その他の日付単位

    構文の最初の形式の利点の1つは、日、週、月、年などを追加するかどうかを指定できることです。ここにいくつかの例があります。

    SELECT 
        '2018-12-01' AS 'Start Date',
        ADDDATE('2018-12-01', INTERVAL 2 WEEK) AS '+2 Weeks',
        ADDDATE('2018-12-01', INTERVAL 2 MONTH) AS '+2 Months',
        ADDDATE('2018-12-01', INTERVAL 2 QUARTER) AS '+2 Quarters',
        ADDDATE('2018-12-01', INTERVAL 2 YEAR) AS '+2 Years';

    結果:

    +------------+------------+------------+-------------+------------+
    | Start Date | +2 Weeks   | +2 Months  | +2 Quarters | +2 Years   |
    +------------+------------+------------+-------------+------------+
    | 2018-12-01 | 2018-12-15 | 2019-02-01 | 2019-06-01  | 2020-12-01 |
    +------------+------------+------------+-------------+------------+

    例4–時間単位

    ADDDATE()を使用することもできます 日付/時刻の値に時間単位を追加します。これが例です。

    SELECT ADDDATE('2018-12-01 01:00:00', INTERVAL 2 HOUR) AS Result;
    

    結果:

    +---------------------+
    | Result              |
    +---------------------+
    | 2018-12-01 03:00:00 |
    +---------------------+

    期待値

    次の表に、有効な単位値と予想される形式を示します。

    unit 価値 予想されるexpr フォーマット
    MICROSECOND マイクロ秒
    2番目
    MINUTE
    時間 時間
    QUARTER 四半期
    SECOND_MICROSECOND 「SECONDS.MICROSECONDS」
    MINUTE_MICROSECOND 「MINUTES:SECONDS.MICROSECONDS」
    MINUTE_SECOND 「MINUTES:SECONDS」
    HOUR_MICROSECOND 「HOURS:MINUTES:SECONDS.MICROSECONDS」
    HOUR_SECOND 「HOURS:MINUTES:SECONDS」
    HOUR_MINUTE 「HOURS:MINUTES」
    DAY_MICROSECOND 「DAYSHOURS:MINUTES:SECONDS.MICROSECONDS」
    DAY_SECOND 「DAYSHOURS:MINUTES:SECONDS」
    DAY_MINUTE 「DAYSHOURS:MINUTES」
    DAY_HOUR 「DAYSHOURS」
    YEAR_MONTH 「YEARS-MONTHS」

    1. Oracleのlistaggの代わりに?

    2. Oracleで英数字以外の文字のみを含む行を返す2つの方法

    3. テキストファイルソースの接続文字列パラメータ

    4. DBAの〜/.psqlrcファイル