这样的SQL语句该怎么写?(50分)

  • 主题发起人 主题发起人 风中的狼
  • 开始时间 开始时间

风中的狼

Unregistered / Unconfirmed
GUEST, unregistred user!
关于数据库查询:
条件需要同时满足A=Z和(B<C或D<C或E<C)
我试着用Select * From 表名 Where A=Z And B<C Or D<C OR E<C
可总觉得有些不对,请问问题出在哪?
 
select * from TableName where A=Z and (B<C or D<C or E<C)
 
select * from XXX where (a=z) and ((b<c) or (d<c) or (e<c))
 
问题就在于对于条件的判断 没写规范

按照你的意思 “A=Z And B<C Or D<C OR E<C”
想A=Z和(B<C或D<C或E<C)是不能同时满足的

正确的写法上面都 已经给出了

你怎么写都可以,但是我习惯于后者的写法(个人习惯)
 
我认为
select * from TableName where (a=z) and ((b<c) or (d<c) or (e<c))
一定满足你的要求,你在看看
 
谢谢大家的帮助!
我对于AND、OR的用法一直搞不清楚。
比如“IF Edit1.Text<>'' OR Edit2.TEXT<>'' Then......”
这样的语句是不是也应该写成
“IF (Edit1.Text<>'') OR (Edit2.TEXT<>'') Then......”呢?
 
“IF Edit1.Text<>'' OR Edit2.TEXT<>'' Then......”

“IF (Edit1.Text<>'') OR (Edit2.TEXT<>'') Then......”
实际上没有什么区别,
不过,你最好写成这样
“IF (Edit1.Text<>'' OR Edit2.TEXT<>'') Then......”
 
to westboy2000
不过,你最好写成这样
“IF (Edit1.Text<>'' OR Edit2.TEXT<>'') Then......”
这条语句执行有问题
出错提示:
“Operator not Applicable to this operand type”
 
“IF (Edit1.Text<>'') OR (Edit2.TEXT<>'') Then......”才对

在sql语句中,and的优先级比or高,所以别忘了加括号
 
多人接受答案了。
 

Similar threads

后退
顶部