从sql查询中获取当前时间戳的天数

时间:2012-01-13 07:02:33

标签: sql-server

我有一张桌子

ID      Timestamp
1       2010-07-27 13:14:00.000
2       2010-08-13 13:14:00.000
3       2010-12-21 13:14:00.000

现在我需要使用当前的getdate()从Timestamp列中减去这一天 并从中获取日子

希望我的问题清楚,任何帮助都会很棒

由于 王子

3 个答案:

答案 0 :(得分:2)

您可以使用DATEDIFF

SELECT DATEDIFF(day, Timestamp, getdate())
FROM   YourTable

<强> DATEDIFF

  

返回指定datepart的count(有符号整数)   在指定的startdate和enddate之间交叉的边界。

<强>语法

DATEDIFF ( datepart , startdate , enddate )

答案 1 :(得分:1)

您可以使用datediff来计算datetime值之间的差异。

declare @T table
(
  ID int,
  Timestamp datetime
)

insert into @T values
(1,       '2010-07-27 13:14:00.000'),
(2,       '2010-08-13 13:14:00.000'),
(3,       '2010-12-21 13:14:00.000')


select datediff(day, Timestamp, getdate())
from @T

答案 2 :(得分:0)

你可以使用。

CURRENT_TIMESTAMP