我们在开发系统时经常会遇到需要计算两个日期之间的时间差,比如根据出生日期,计算用户的年龄,这个就需要用当前日期减去出生日期去计算。那么在SQLServer该如何计算两个日期的时间差呢?这时我们就需要用上DATEDIFF() 函数了。
DATEDIFF()函数语法:
DATEDIFF(datepart, startdate, enddate)startdate 和 enddate 参数是合法的日期表达式。datepart 参数可以是下列的值:
datepart | 缩写 |
year | yy, yyyy |
quarter | qq, q |
Month | mm, m |
dayofyear | dy, y |
Day | dd, d |
Week | wk, ww |
Hour | hh |
minute | mi, n |
second | ss, s |
millisecond | ms |
例子:
1.用DATEDIFF()函数计算两个日期相差几秒
SELECT DATEDIFF(s,'2023-01-01 8:00:00','2023-05-15 9:30:00');
执行结果:
2.用DATEDIFF()函数计算两个日期间相差几天
SELECT DATEDIFF(day,'2023-01-01 8:00:00','2023-05-15 9:30:00');
执行结果:
3.用DATEDIFF()函数计算两个日期间相差几年
执行结果:
SELECT DATEDIFF(year,'2023-01-01 8:00:00','2024-05-15 9:30:00');
4.用DATEDIFF()函数计算两个日期之间相差几个月
/*---堆代码 duidaima.com --*/
SELECT DATEDIFF(month,'2023-01-01 8:00:00','2024-05-15 9:30:00');
执行结果: