慕斯王
2021-06-23 18:15:17
這條T-SQL語句:select cast((getdate()-cast('2007-12-1' as datetime))as int)如何理解?我知道是轉(zhuǎn)換函數(shù),就是不能理解(getdate()-cast('2007-12-1' as datetime)這一部分。
2 回答

守著一只汪
TA貢獻1872條經(jīng)驗 獲得超4個贊
把這個作為兩部分
cast('2007-12-1' as datetime) 這個是將'2007-12-1'轉(zhuǎn)換成datetime類型 ,把它標(biāo)記為時間date2
把getdate()標(biāo)記為為時間date1
cast((getdate()-cast('2007-12-1' as datetime))as int)
相當(dāng)于cast((date1-date2) as int) 意思就是將date1-date2的結(jié)果轉(zhuǎn)換成int型

明月笑刀無情
TA貢獻1828條經(jīng)驗 獲得超4個贊
兩個時間相減,得到一個相對于1900年時間差的值。
比如select (getdate()-cast('2007-12-1' as datetime)) 得到 1907-05-11 16:03:28.300 也就說,兩個時間相差是7年5個月11天 16小時.....這樣的。
添加回答
舉報
0/150
提交
取消