某项目中需要对一个日期列进行模糊查询,例如:查询日期为2021-05-29的记录。数据库中的记录形式如下:
想用CONVERT()之类的函数先把日期转成字符串再查,尝试了一番感觉很不好使。网上找到了一个比较好用的方法:
select * from [UserDatabase].[dbo].[demo] where
(DATEPART(yy, dt)= 2021) and
(DATEPART(mm, dt)= 05) and
(DATEPART(dd, dt)= 21)
order by dt desc
实测有效。
参考:https://stackoverflow.com/questions/1629050/sql-server-datetime-like-select