Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
返回两个日期之间的间隔。
DATEDIFF( date-part, date-expression-1, date-expression-2 )
date-part : year | quarter | month | week | day | dayofyear | hour | minute | second | millisecond | microsecond
date-part 指定要测量间隔的日期部分。
选择上面列出的日期对象之一。有关日期部分的完整列表,请参见指定日期部分。
date-expression-1 间隔的起始日期。从 date-expression-2 中减去此值,以返回这两个参数之间 date-part 的数量。
date-expression-2 间隔的结束日期。从此值中减去 Date-expression-1,以返回这两个参数之间 date-part 的数量。
year、quarter、month、week、day 和 dayofyear 用 INT。hour、minute、second、millisecond 和 microsecond 用 BIGINT。
此函数计算两个指定日期之间日期部分的数量。结果是一个等于 date-expression-2 与 date-expression-1 之差的有符号整数值(以日期部分为单位)。
当结果不是日期部分的偶数倍时,将会截断而不是舍入 DATEDIFF 函数的结果。
当使用 day 作为日期部分时,DATEDIFF 函数返回两个指定时间之间(包括第二个日期但不包括第一个日期)的午夜数。
当使用 month 作为日期部分时,DATEDIFF 函数返回两个日期之间(包括第二个日期但不包括第一个日期)出现的月第一天的个数。
当使用 week 作为日期部分时,DATEDIFF 函数返回两个日期之间(包括第二个日期但不包括第一个日期)的星期日的个数。
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' );