在数据库的查询中使用like的问题

wangintel 2002-10-30 03:30:05
在查询条件中要按照月份进行查询的时候,条件语句为
a.b_date LIKE '2002-6%' (* 其中a为数据库名称,b_date为datetime类型,长度为8位 *),查询无结果。但如果将a.b_date LIKE '2002-6%'更改为a.b_date>='2002-06-01' and a.b_date<='2002-06-30' 则有结果,谁能解释a.b_date LIKE '2002-6%' 这种写法的错误在哪里???

在线等待!!急
...全文
142 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hycao 2002-10-30
  • 打赏
  • 举报
回复
同样的问题,请看我在下面这个帖子里的回答:
http://expert.csdn.net/Expert/topic/1131/1131320.xml?temp=.152157
shawls 2002-10-30
  • 打赏
  • 举报
回复
这个like针对string阿
wangintel 2002-10-30
  • 打赏
  • 举报
回复
那个我也知道,但是我想问的是如果用like的时候是日期类型的写法,哪位能写一个出来啊,有用啊!!!
zhsu 2002-10-30
  • 打赏
  • 举报
回复
b_date字段的类型是日期的吧,要是字符的就没问题!
wangintel 2002-10-30
  • 打赏
  • 举报
回复
datapart 是返回一个指定日期的的指定部分,不是吧
cacoda 2002-10-30
  • 打赏
  • 举报
回复
数据库中datetime类型实际上是用数字存储的,你必须把该字段转换成字符型之后使用like 才能得到正确的结果,如你的查询可以转换为
datepart(yyyy,a.b_date)='2002' and datepart(mm,a.b_date)='06'

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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