比较存储过程中的当前日期

时间:2013-06-20 19:41:40

标签: c# sql sql-server tsql

我试图在存储过程中检查表中的日期是否等于今天的日期。

  Code is 
    DECLARE @p0 datetime
    Set @p0 =GETDATE()
    Select * from testtable 
    where dateCol=@p0

这不起作用它只是给空行。我怎么能做到这一点?谢谢

2 个答案:

答案 0 :(得分:0)

你需要:

SET @p0 = CONVERT(CHAR(10),GETDATE(),103)  

GETDATE()返回日期和时间。你可能有今天的日期记录,但不是在这个确切的时间。

此外,您并不需要将其存储在@p0中。您可以直接在WHERE子句中使用表达式。

答案 1 :(得分:0)

如果dateCol只是日期,而不是DATETIME,您可以使用:

SELECT *
FROM Table
WHERE dateCol = CAST(GETDATE() AS DATE)
相关问题