MySQL数据表中带OR的多条件查询

举报
SHQ5785 发表于 2024/01/08 10:15:38 2024/01/08
【摘要】 OR关键字可以联合多个条件进行查询。使用OR关键字时:条件1) 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来。2) 如果不符合这些查询条件中的任何一条,这样的记录将被排除掉。语法格式OR关键字的基本语法格式如下:条件表达式1 OR 条件表达式2 [...OR 条件表达式n]OR可以连接两个条件表达式,同时可以使用多个OR关键字,以连接更多的条件表达式。实例实例1使用OR关键...

OR关键字可以联合多个条件进行查询。使用OR关键字时:

条件

1) 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来。

2) 如果不符合这些查询条件中的任何一条,这样的记录将被排除掉。

语法格式

OR关键字的基本语法格式如下:

条件表达式1 OR 条件表达式2 [...OR 条件表达式n]

OR可以连接两个条件表达式,同时可以使用多个OR关键字,以连接更多的条件表达式。

实例

实例1

使用OR关键字查询employee表中d_id为1001,或者sex为'男'的记录。SELECT语句的代码如下:

SELECT * FROM employee WHERE d_id=1001 OR sex LIKE '男';

可将d_id为1001的记录被查询了出来,同时,sex为'男'的记录也被查询了出来。

这说明,使用OR关键字时,只要符合多个条件中的任意一个条件,就可以被查询出来。

实例2

使用OR关键字查询employee表中的记录。查询条件为num取值在(1,2,3)集合中,或者age的范围为24~26,或者homeaddress的取值中包含“厦门市”。SELECT语句的代码如下:

SELECT * FROM employee WHERE

         num IN(1,2,3) OR age BETWEEN 24 AND 26

         OR homeaddress LIK '%厦门市%';

结果显示,只要符合这3个条件表达式中的任意一个条件,这样的记录就会被查询出来。


OR可以和AND一起使用。当两者一起使用时,AND要比OR先运算。

实例3

使用OR和AND关键字查询employee表中的记录。SELECT语句的代码如下:


SELECT * FROM employee WHERE num IN(1,3,4) AND age=25 OR sex='女';

结果显示,只要符合num IN(1,3,4) AND age=25的记录或者符合sex='女'的记录都被显示了出来。

如果将条件的顺序换一下,将SELECT语句变成下面的情况:

SELECT * FROM employee WHERE sex='女' OR num IN(1,3,4) AND age=25;

结果显示,与前面的SELECT语句的执行结果是一样的。

这说明,AND关键字前后的条件先结合,然后再与OR关键字的条件相结合。也就是说,AND要比OR先运算。

提示

AND和OR关键字可以连接条件表达式。这些条件表达式中可以使用“=”、“>”等操作符,也可以使用IN、BETWEEN AND和LIKE等关键字,而且,LIKE关键字匹配字符串时可以使用“%”和“_”等通配符。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。