MySQLの`TIMESTAMPDIFF()`関数の利用方法を教えてください。
TIMESTAMPDIFF関数は、2 つの日付または時刻の差を計算して、指定された単位で結果を返します。その構文は次のとおりです。
TIMESTAMPDIFF(単位, 日時_表現1, 日時_表現2)
差分を返す単位を示すunitがあり、次の値のいずれかを取ることができます。
- マイクロセカンド:100万分の1秒
- 2:秒
- MINUTE:分
- アワー:時間
- DAY:デイ
- WEEK:ウィーク
- 月:MONTH
- クォーター:四半期
- 年:YEAR
日付または時刻の表現であるdatetime_expr1 と datetime_expr2 は、差の計算対象となります。
TIMESTAMPDIFF 関数を使用して 2 つの日付の差の日数を計算する方法の例を次に示します。
SELECT TIMESTAMPDIFF(DAY, '2021-01-01', '2021-01-10') AS day_diff;
このクエリは「day_diff」という列を返し、「2021-01-01」と「2021-01-10」の間の日数差を格納し、結果は9になります。
分・時などの別の単位を使うこともできます。unitパラメータを対応する単位に置き換えるだけです。