SQL时间类型(DateTime)模糊查询及Between

retty85 2008-03-21 05:40:33
在SQL中如果一个字段(AMD) 为DateTime类型,那么查询时

AMD like '%2007-03-02%'就查询不到数据(AMD like '%2007-3-2%'也一样)
AMD between '2007-03-02' and '2007-03-02 23:59:00'也查询不到数据

写入数据时,都格式化成了YYYY-MM-DD HH:MM:SS

只有用CONVERT转换后才能查找到数据,

我想问这个到底是什么原因造成的,越详细越好,
...全文
1947 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzy_love_sly 2008-03-21
  • 打赏
  • 举报
回复
declare @tb table (amd datetime)
insert into @tb select '2007-03-02'

select * from @tb where AMD between '2007-03-02' and '2007-03-02 23:59:00'


2007-03-02 00:00:00.000

这不是可以查吗
青锋-SS 2008-03-21
  • 打赏
  • 举报
回复
datediff(d,AMD,'2007-03-02')=0

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧