DATEDIFF(日付の差分を比較する)
DATEDIFFの構文
SQLServerで日付(月、日、時間)の差を比較するには「DATEDIFF」を使います。
DATEDIFF(型, 開始日, 終了日)
開始日~終了日の日付種類(月、日、時間)の差を比較します。
第一引数の「型」は下記の一覧を参照してください。時間を比較する場合は「hour」、日を比較する場合は「day」とします。
<第一引数の型>
種類 | 型 | 型(略) |
年 | year | yyyy/yy |
月 | month | mm |
日 | day | dd |
時間 | hour | hh |
分 | minute | mi |
秒 | second | ss |
例1. 日付の差を比較するパターン
--日付の差を比較する SELECT DATEDIFF(day, '2022-11-01', '2022-11-03'); [結果] 2
第1パラメータに「day」をセットしました。ここでは「11/1」と「11/3」の日付差を比較し「2」を取得しました。
例2. 時間の差を比較するパターン
--時間の差を比較する SELECT DATEDIFF(hour, '2022-11-01 09:00:00', '2022-11-01 12:00:00'); [結果] 3
第1パラメータに「hour」をセットしました。ここでは「9時」と「12時」の時間差を比較し、「3」を取得ました。
例3. 分の差を比較するパターン
--分の差を比較する SELECT DATEDIFF(minute, '2022-11-01 09:00:00', '2022-11-01 12:00:00'); [結果] 180
第1パラメータに「minute」をセットしました。ここでは「9時00分」と「12時00分」の時間(分)差を比較し「180」を取得しました。
以上、SQLServerでDATEDIFFを使って日付(月、日、時間)の差を比較する方法でした。
コメント