收集MSSQL函数


Datediff:返回跨两个日期的日期和时间边界数

语法:Datediff(datepart,startdate,enddate)

参数

datepart

是规定了应在日期的哪一部分计算差额的参数。下表列出了Microsoft®SQLServer™识别的日期部分和缩写。

日期部分缩写
yearyy,yyyy
quarterqq,q
Monthmm,m
dayofyeardy,y
Daydd,d
Weekwk,ww
Hourhh
minutemi,n
secondss,s
millisecondms

startdate

是计算的开始日期。startdate是返回datetimesmalldatetime值或日期格式字符串的表达式。

因为smalldatetime只精确到分钟,所以当用smalldatetime值时,秒和毫秒总是0。

如果您只指定年份的最后两位数字,则小于或等于"两位数年份截止期"配置选项的值的最后两位数字的数字所在世纪与截止年所在世纪相同。大于该选项的值的最后两位数字的数字所在世纪为截止年所在世纪的前一个世纪。例如,如果twodigityearcutoff为2049(默认),则49被解释为2049,2050被解释为1950。为避免模糊,请使用四位数的年份。

有关时间值指定的更多信息,请参见时间格式。有关日期指定的更多信息,请参见datetime和smalldatetime

enddate

是计算的终止日期。enddate是返回datetimesmalldatetime值或日期格式字符串的表达式。

返回类型

integer

注释

startdate是从enddate减去。如果startdateenddate晚,返回负值。

当结果超出整数值范围,DATEDIFF产生错误。对于毫秒,最大数是24天20小时31分钟零23.647秒。对于秒,最大数是68年。

计算跨分钟、秒和毫秒这些边界的方法,使得DATEDIFF给出的结果在全部数据类型中是一致的。结果是带正负号的整数值,其等于跨第一个和第二个日期间的datepart边界数。例如,在1月4日(星期日)和1月11日(星期日)之间的星期数是1。

示例

此示例确定在pubs数据库中标题发布日期和当前日期间的天数。

USEpubs
GO
SELECTDATEDIFF(day,pubdate,getdate())ASno_of_days
FROMtitles
GO

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值