社区
C#
帖子详情
SQL多条件 并且(AND) 或者(OR) 怎么写
munepn3vc
2011-12-10 03:45:03
SELECT * FROM [表名] WHERE [字段1]= 'A' And [字段2] = 'B' And ([字段3] = 888 OR [字段4] = 888 )
字段1和字段2是文本型,字段3和字段4是数字型
我想查询 , 字段1 = A 并且 字段2 = B 并且 (字段3 或者 字段4 = 888)
上面的SQL为什么不正确,正确的该怎么写?
...全文
35347
16
打赏
收藏
SQL多条件 并且(AND) 或者(OR) 怎么写
SELECT * FROM [表名] WHERE [字段1]= 'A' And [字段2] = 'B' And ([字段3] = 888 OR [字段4] = 888 ) 字段1和字段2是文本型,字段3和字段4是数字型 我想查询 , 字段1 = A 并且 字段2 = B 并且 (字段3 或者 字段4 = 888) 上面的SQL为什么不正确,正确的该怎么写?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
munepn3vc
2011-12-14
打赏
举报
回复
谢谢大家,这几天忙其他事没来得及结贴.
8楼的答案不错,但理解错了.
SELECT * FROM [表名] WHERE ([字段1]= 'A' And [字段2] = 'B' And [字段3] = 888 )OR([字段1]= 'A' And [字段2] = 'B' And [字段4] = 888 )
字段3和字段4只要1个满足就行了.
mizuho_2006
2011-12-11
打赏
举报
回复
1
字段1 = 'A' and 字段2 = 'B' and (字段3 = 888 or 字段4 = 888)
如果是字段3和字段4在数据库中定义是字符型,则要写成
字段1 = 'A' and 字段2 = 'B' and (字段3 = '888' or 字段4 = '888')
阿非
2011-12-11
打赏
举报
回复
看下实际的SQL 是怎样的
淘淘大师
2011-12-10
打赏
举报
回复
你要看看你数据库中3和4字段是否真的是数字型的,数字型的查询是不用加单引号的,当然你加了也没有问题的,所以很可能是表有问题吧
征服者X
2011-12-10
打赏
举报
回复
没问题,看看你的数据类型对不?
陈阿弟
2011-12-10
打赏
举报
回复
([字段3] = '888' OR [字段4] = '888' ) 都加上 单引号,试试
绿领巾童鞋
2011-12-10
打赏
举报
回复
逻辑应该没错,是可以这样用,自己调试试试
晴空万里2942
2011-12-10
打赏
举报
回复
SELECT * FROM [表名] WHERE ([字段1]= 'A' And [字段2] = 'B' And [字段3] = 888 )OR([字段1]= 'A' And [字段2] = 'B' And [字段3] = 888 And [字段4] = 888 )试试这个。
牧云
2011-12-10
打赏
举报
回复
如果是Acess数据库的话,字符串处理要小心
如果查询条件的字段为字符串型的,要在字段前面加上:cstr()
其中()里面是字段名,尤其是字段为日期是就出这种错
黄瓜黄瓜
2011-12-10
打赏
举报
回复
2
select * from tb where cell1="A" and cell2="B" and (cell3=3 or cell4=3)
看你的表达 字段1 = A 并且 字段2 = B 并且 (字段3 或者 字段4 = 888)
你就这样写出来就对了啊 列3 和列4 是一个组合条件嘛 ,
ycagri
2011-12-10
打赏
举报
回复
语句看不出问题
and 优先级 大于 or
人生难得一只鸡
2011-12-10
打赏
举报
回复
逻辑上应该没有错误
stonespace
2011-12-10
打赏
举报
回复
很可能是你的字段名打错了,
stonespace
2011-12-10
打赏
举报
回复
vs也有图形化的sql语句编辑工具,
stonespace
2011-12-10
打赏
举报
回复
粗一看应该没错,你可以用sql server的sql编辑器生成sql语句,对比和你写的是否一样,
SQL
中多个 and or 的组合运算
sql
关系型运算符优先级高到低为:not >and> or AND、OR运算符的组合使用 在WHERE子句中,通过AND、OR运算符可以同时连接多个
条件
,当然AND、OR运算符也可以同时使用。但是当AND、OR运算符同时存在时,其优先级如何确定呢?与大多数语言一样,
SQL
语言认为AND运算符的运算级别要高于OR运算符。即当出现: condition1 OR conditi...
SQL
AND & OR 运算符的用法
SQL
AND & OR 运算符的用法 开发工具与关键技术:
SQL
+ DML 撰
写
时间:2019年6月15日 1、
SQL
AND & OR 运算符的用法: 1) AND 和 OR 可在 WHERE 子语句中把两个或多个
条件
结合起来。 2) 如果第一个
条件
和第二个
条件
都成立,则 AND 运算符显示一条记录。 3)如果第一个
条件
和第二个
条件
中只要有一个成立,则 OR 运算符显...
SQL
中and和or连用
查询name_1列等于1或者2,并且name_2列等于3的数据 如下
写
法是在不知道OR和AND的优先级的问题的时候,根据查询需求的表面意思书
写
的
SQL
语句。 SELECT name_1,name_2 FROM table WHERE name_1=‘1’ OR name_1=‘2’ AND name_2 =‘3’ 但是AND的优先级高于OR 即 AND > OR 所以上述的
SQL
语句的查询
条件
是相当于这样的: WHERE name_1=‘1’ OR ( name_1=‘2’ AND name_2 =
my
sql
sql
where or_
SQL
的WHERE子句中包含多个AND和OR
SQL
的WHERE子句中包含多个AND和OR关于
SQL
的where子句中包含多个and和or是计算顺序问题,
SQL
在处理操作时会优先处理 and 操作,这就是很多人会得到很多错误的原因,举个例子:加入有表product字段如下:id、product_id、product_price、product_name现在要查找产品号为100或者101,并且价格大于200的商品,你可能会这样做:select...
6.
SQL
中And & Or运算符的使用
上一篇中我们学习了在Select语句后的Where子句中加入一个过滤
条件
去筛选部分数据,不过实际工作中一个过滤
条件
肯定是多数情况下无法满足我们的筛选要求的,两个三个甚至多个筛选
条件
的情况层出不穷。本篇中我将结合几个例子展开说明下And和Or的用法。
C#
110,538
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章