在MS SQL Server中将当前日期与LIKE进行比较

时间:2016-06-09 01:19:59

标签: sql sql-server

我在其中一个表格中有这种格式2016-06-09 10:56:29.000的日期字段。我想基于当前日期select 2016-06-09记录select * from dbo.Accounts where createDate like CAST(GETDATE() as DATE) 。我正在尝试以下查询,但没有显示任何记录。

subscriber

我知道我在做错事。任何SQL专家,请帮助我。

1 个答案:

答案 0 :(得分:3)

请勿使用like。只需将值转换为日期:

select *
from dbo.Accounts
where cast(createDate as date) = CAST(GETDATE() as DATE);

like是一个字符串函数。您应该使用date函数比较日期,例如=。如果使用like,则使用任何有效的本地化参数将值隐式转换为字符串。