Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
2 つの日付間の期間を返します。
DATEDIFF( date-part, date-expression-1, date-expression-2 )
date-part : year | quarter | month | week | day | dayofyear | hour | minute | second | millisecond | microsecond
date-part 期間を測定する日付の単位を指定します。
上記の日付オブジェクトから 1 つを選択します。日付の単位の完全なリストについては、日付の単位の指定を参照してください。
date-expression-1 期間の開始日。この値を date-expression-2 から引いて、2 つの引数の間に存在する date-part の数を返します。
date-expression-2 期間の終了日。この値から date-expression-1 を引いて、2 つの引数の間に存在する date-part の数を返します。
年、四半期、月、週、日、通し日数を示す INT。時、分、秒、ミリ秒、マイクロ秒を表す BIGINT。
この関数は、指定した 2 つの日付間に存在する日付の単位の数を計算します。結果は、日付の単位の数を表す (date-expression-2 - date-expression-1) と同値の符号付き整数です。
DATEDIFF 関数の結果が日付の単位の整数倍でない場合、結果は丸められずに切り捨てになります。
day を日付の単位として使用する場合、DATEDIFF 関数は指定された 2 つの時刻の間の午前 0 時の回数を返します。このとき、2 番目の日付は計算に含まれますが、最初の日付は含まれません。
month を日付の単位として使用する場合、DATEDIFF 関数は 2 つの日付の間に存在する月の初日の数を返します。このとき、2 番目の日付は計算に含まれますが、最初の日付は含まれません。
week を日付の単位として使用する場合、DATEDIFF 関数は 2 つの日付の間に存在する日曜日の数を返します。このとき、2 番目の日付は計算に含まれますが、最初の日付は含まれません。
SQL/2008 ベンダー拡張。
次の文は、1 を返します。
SELECT DATEDIFF( hour, '4:00AM', '5:50AM' );
次の文は、102 を返します。
SELECT DATEDIFF( month, '1987/05/02', '1995/11/15' );
次の文は、0 を返します。
SELECT DATEDIFF( day, '00:00', '23:59' );
次の文は、4 を返します。
SELECT DATEDIFF( day, '1999/07/19 00:00', '1999/07/23 23:59' );
SELECT DATEDIFF( month, '1999/07/19', '1999/07/23' );
SELECT DATEDIFF( month, '1999/07/19', '1999/08/23' );