求助!!SQL语句的问题。

LEIYUJIAO 2001-12-13 02:13:31
cmd1.CommandText = "Select * from setgood where Trim(senddate) >= '" + Format(Text1.Text, "YY-MM-DD") + "'AND Trim(senddate) <= '" + Format(Text2.Text, "YY-MM-DD") + "'AND Custname like '%" + Trim(Text3.Text) + "%' AND Goodname like '%" + Trim(Text4.Text) + "%' OR Custid like '" + Trim(CStr(Text5.Text)) + "'"

出问题,如果没有最后一个条件判断则能正确显示。CUSTID是文本类型的。大伙能说说问题在哪儿吗?求助!
...全文
117 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lazywolf 2001-12-14
  • 打赏
  • 举报
回复
Custid like '" + Trim(CStr(Text5.Text)) + "'"
在like后面的字符串应该为'%'&str&'%'或者'%'&str 或者str&'%'……
而like 'str'是错误的!
LEIYUJIAO 2001-12-14
  • 打赏
  • 举报
回复
还是有些不明白,能说详细点吗
BrightEye 2001-12-14
  • 打赏
  • 举报
回复
注意AND、OR的优先级别。
jinyefeng 2001-12-14
  • 打赏
  • 举报
回复
不用UNION,也可以
在每一个条件左右加括考就可以了,以AND和OR连接即可
jinyefeng 2001-12-14
  • 打赏
  • 举报
回复
用UNION语句就可以解决了
王集鹄 2001-12-13
  • 打赏
  • 举报
回复
Select *
from setgood
where Trim(senddate) >= '2001-12-12' AND
Trim(senddate) <= '2001-12-12' AND
Custname like '%X%' AND
Goodname like '%X%' OR Custid like 'X'
//Trim(字符类型)

Select *
from setgood
where senddate >= '2001-12-12' AND
senddate <= '2001-12-12' AND
Custname like '%X%' AND
Goodname like '%X%' OR Custid like 'X'

fog 2001-12-13
  • 打赏
  • 举报
回复
where (……) or ……
~~~~~~

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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