如何查找特定日期的天数?

时间:2012-10-11 09:00:02

标签: c# sql-server sql-server-2008

我有两个约会,想要查找包含两个日期的天数,我试过这样的事情:

select datediff("d", '10/11/2012', '10/12/2012')

它显示1,但我希望结果为2,因为我们有2天11和12。

3 个答案:

答案 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