为了账号安全,请及时绑定邮箱和手机立即绑定

求解释,请问如何理解转换函数cast这条T-SQL语句?有点不明白

求解释,请问如何理解转换函数cast这条T-SQL语句?有点不明白

慕斯王 2021-06-23 18:15:17
这条T-SQL语句:select cast((getdate()-cast('2007-12-1' as datetime))as int)如何理解?我知道是转换函数,就是不能理解(getdate()-cast('2007-12-1' as datetime)这一部分。
查看完整描述

2 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

把这个作为两部分
cast('2007-12-1' as datetime) 这个是将'2007-12-1'转换成datetime类型 ,把它标记为时间date2
把getdate()标记为为时间date1
cast((getdate()-cast('2007-12-1' as datetime))as int)
相当于cast((date1-date2) as int) 意思就是将date1-date2的结果转换成int型

查看完整回答
反对 回复 2021-06-28
?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

两个时间相减,得到一个相对于1900年时间差的值。
比如select (getdate()-cast('2007-12-1' as datetime)) 得到 1907-05-11 16:03:28.300 也就说,两个时间相差是7年5个月11天 16小时.....这样的。

查看完整回答
反对 回复 2021-06-28
  • 2 回答
  • 0 关注
  • 363 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信