嘿,伙计们,我创建了一个存储过程,其中select查询中有datetime字段。这是我查询的
select * from tablename where publishdate like '%03/10/2011%'
这可能吗,或者我应该如何形成查询我的目标是查询应该返回2011年3月10日的记录
使用CONVERT
select * from tablename where convert(varchar(10), publishdate, 103) = '03/10/2011'
尝试
select * from tablename where day(publishdate) = 10 And Month(publishdate) = 3
And Year(publishdate) = 2011 --Let the required date be 10th March 2011
希望得到帮助。
最好的方法是:
Select *
from tablename
Where publishdate >= '20110310'
and publishdate < '20110311'
通过像这样分离条件,您允许SQL Server在publishdate列上使用索引(如果存在索引)。我展示的查询将使用超快的索引搜索而不是扫描,从而获得更好的性能。