当我运行以下查询时:
select convert(int, getdate())
我得到结果:
-----------
41238
(1 row(s) affected)
有谁知道这是什么意思?
它是我认为以来的天数1/1/1900
,sql-server 保持从那时起的天数。
尝试将该数字除以大约 365。您应该以年份 (112) 获得该值。自 1900 + 112 = 2012
这是因为 SQL 本身会保留自01/01/1900
整数值后面的小数是时间。
32.5
等于02/01/1900 12:00 pm
如果您希望仅将日期的一部分作为整数获取和使用,我建议您使用datepart
该语句将仅返回月份并将该值转换为整数。
select convert(int, datepart(mm,getdate())