我有两个约会,想要查找包含两个日期的天数,我试过这样的事情:
select datediff("d", '10/11/2012', '10/12/2012')
它显示1,但我希望结果为2,因为我们有2天11和12。
答案 0 :(得分:9)
最新版本的SQL引入了对添加整数的支持!耶。
select datediff("d", '10/11/2012', '10/12/2012') + 1
^^^^^
答案 1 :(得分:1)
如你所知,well datediff总会找到2天之间的差异,对于你的例子,这是1.如果你想要包含这个,那为什么不只是+1结果?
select datediff("d", '10/11/2012', '10/12/2012') + 1
答案 2 :(得分:1)
如果您也在使用负面差异进行操作,添加1可能无法为您提供所需的答案,您可以处理以下情况:
declare @from datetime = '2012-10-11'
declare @to datetime = '2012-10-10'
select datediff(day, @from, @to)
+ case when datediff(day, @from, @to) < 0 then -1 else 1 end