DateDiff问题
请问大家,为什么 2011-12-31 与 2012-1-1 ,用此函数查相隔年数。为什么会是1年呢。才一天而已。
请不要说就是这么规定的。现在我想问为什么这么规定。有人知道吗。
------解决方案--------------------select datediff(year,'2011-12-31','2012-01-01')
既然取年部分的差值当然是1
datediff 返回跨两个指定日期的日期和时间边界数
比如这里的车datediff是截取年部分,算差值
------解决方案--------------------你可以先从数据库取出来两个日期字符串,在C#中使用TimeSpan计算时间差。
------解决方案--------------------那你就判断相隔几天来进一步优化吧
------解决方案-------------------- datediff是用来计算两个时间的差的。 你用year 它计算的就是相差的年份。 如你上面所说。想计算它相差多少天就得用day