一个SQL语句问题,大家帮忙看看

daryl715 2002-04-19 05:09:52
select * from test where 月='" & "2" &"' and 日>='" & "2" &"' and 日<='" & "12" &"'"

我想查询月份等于2,日在2和12之间的记录,但查询结果为空(肯定有符合的数据)

我还发现,如果写成
select * from test where 月='" & "2" &"' and 日>='" & "2" &"' and 日<='" & "9" &"'"
或者
select * from test where 月='" & "2" &"' and 日>='" & "10" &"' and 日<='" & "34" &"'"

都可以查到相符合的数据

难道必须是两个同位数(上下限都是个位数(2,9)或十位数(10,34))才能查讯道结果吗?
...全文
37 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
daryl715 2002-04-19
  • 打赏
  • 举报
回复
谢谢ferry QQ上的解答,解决了
wuwutao 2002-04-19
  • 打赏
  • 举报
回复
因为你的月日是保存的数字字段,而查询时用字符吧,请将’(单引号)去掉也许就行了
年糕 2002-04-19
  • 打赏
  • 举报
回复
select * from test where month(日期字段)=2 and day(日期字段)>=2 and day(日期字段)<=12

lyqof908 2002-04-19
  • 打赏
  • 举报
回复
使用FORMAT函数,变成长格式
ferrytang 2002-04-19
  • 打赏
  • 举报
回复
将月份、日的数值类型改成数值型
str1 = "select * from shourubiao where 月份= " & Val(Trim(Form3.Combo1.Text)) & " and 日>=" & Val(Trim(Form3.Combo2.Text)) & " and 日<=" & Val(Trim(Form3.Combo4.Text)) & " order by 日"
ewzy 2002-04-19
  • 打赏
  • 举报
回复
那你应该用数字型。
字符中‘2’>‘12’
daryl715 2002-04-19
  • 打赏
  • 举报
回复
查2〈=日〈=9就可以查到

查2<=日<=11就查不到
daryl715 2002-04-19
  • 打赏
  • 举报
回复
这是我的查询语句
str1 = "select * from shourubiao where 月份= '" & Val(Trim(Form3.Combo1.Text)) & "' and 日>='" & Val(Trim(Form3.Combo2.Text)) & "' and 日<='" & Val(Trim(Form3.Combo4.Text)) & "' order by 日"
ilfsm 2002-04-19
  • 打赏
  • 举报
回复
为什么不直接用标准日期(数据类型可为“日期时间”、也可为“字符串”)呢?
如:

2002-02-19

就不会出现这个情况。
ilfsm 2002-04-19
  • 打赏
  • 举报
回复
为什么不直接用标准日期(数据类型可为“日期时间”、也可为“字符串”)呢?
如:

2002-02-19

就不会出现这个情况。
limit 2002-04-19
  • 打赏
  • 举报
回复
要不就将日变成'01','02'等等。
daryl715 2002-04-19
  • 打赏
  • 举报
回复
数字型也不成啊
valiant 2002-04-19
  • 打赏
  • 举报
回复
最好日是数字型的。就可以了。
ewzy 2002-04-19
  • 打赏
  • 举报
回复
字符串2>12
zhoulh 2002-04-19
  • 打赏
  • 举报
回复
select * from test where 月='" & "2" &"' and 日BETWEEN '" & "2" &"' and 日<='" & "12" &"'"

ferrytang 2002-04-19
  • 打赏
  • 举报
回复
字符串型 2>10
数值型2<10
明白了吗

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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