处理SQL Server日期时间边缘情况

时间:2012-05-05 08:07:11

标签: sql-server tsql datetime sql-server-2000

我在SQL Server 2000表中有以下数据:

Dates
-----------------------
2012-05-04 01:23:45.678
2012-05-05 01:23:45.678
2012-05-06 01:23:45.678

假设GETDATE()返回:

2012-05-05 12:34:56.789

我需要从上面返回行#2和#3的最有效(和优雅)的查询,标准是:

  

日期部分日期> = GETDATE()的日期部分

1 个答案:

答案 0 :(得分:4)

DECLARE @Now DATETIME
SELECT @Now = DATEADD(dd, DATEDIFF(dd, 0, GETDATE()), 0)

SELECT ...
WHERE Dates >= @Now 

改编自thisthis