MySQLでは、TIMESTAMPADD()
この関数を使用すると、指定した時間を日付または日時の値に追加できます。追加するユニットと、追加するユニットの数を指定します。初期値、追加する量、使用する単位に使用される3つの引数を受け入れます。
構文
構文は次のようになります:
TIMESTAMPADD(unit,interval,datetime_expr)
unit
追加する単位はinterval
追加するユニットの数であり、datetime_expr
は初期の日付または日時の値です。
単位引数は、MICROSECOND
のいずれかになります。 SECOND
、MINUTE
、HOUR
、DAY
、WEEK
、MONTH
、QUARTER
、またはYEAR
。
unit引数には、プレフィックスSQL_TSI_
を付けることもできます。 。たとえば、DAY
のいずれかを使用できます またはSQL_TSI_DAY
。
例1–1日を追加
この例では、最初の日付に1日を追加します。
SELECT TIMESTAMPADD(DAY, 1, '1999-12-31');
結果:
+------------------------------------+ | TIMESTAMPADD(DAY, 1, '1999-12-31') | +------------------------------------+ | 2000-01-01 | +------------------------------------+
例2–1秒追加
この例では、最初の日付に1秒を追加します。
SELECT TIMESTAMPADD(SECOND, 1, '1999-12-31');
結果:
+---------------------------------------+ | TIMESTAMPADD(SECOND, 1, '1999-12-31') | +---------------------------------------+ | 1999-12-31 00:00:01 | +---------------------------------------+
結果は、秒の部分を返すための日時値になりました。
例3–マイクロ秒を追加
前の例はさらに一歩進んで、秒の小数部を追加することができます。この例では、最初の日付にマイクロ秒を追加します。
SELECT TIMESTAMPADD(MICROSECOND, 1, '1999-12-31');
結果:
+--------------------------------------------+ | TIMESTAMPADD(MICROSECOND, 1, '1999-12-31') | +--------------------------------------------+ | 1999-12-31 00:00:00.000001 | +--------------------------------------------+
例4–SQL_TSI_プレフィックスの使用
前述のように、ユニットにはSQL_TSI_
を含めることができます プレフィックス。
SELECT TIMESTAMPADD(SQL_TSI_YEAR, 1, '1999-12-31');
結果:
+---------------------------------------------+ | TIMESTAMPADD(SQL_TSI_YEAR, 1, '1999-12-31') | +---------------------------------------------+ | 2000-12-31 | +---------------------------------------------+
TIMESTAMP()関数
TIMESTAMP()
を使用できます 日付または日時の値に一度に複数の時間部分を追加する関数。したがって、たとえば、必要に応じて日付に12:35:26.123456を追加できます。
この関数の詳細については、TIMESTAMP()
を参照してください。 例。