目录
id | name | age |
1 | atom | 111 |
2 | atom2 | 22 |
3 | atom3 | 33 |
4 | atom | 22 |
1、AND操作符
如果我们想要搜索年龄为22岁的atom,应该怎么搜索呢?
这时候就可以使用and连接符来操作了,在where的过滤条件中用and来关联两个过滤条件
SELECT name,age from person where name = "atom" and age = 22
搜索姓名和年龄从name表中,条件是姓名为 atom 并且年龄为22岁
and是用来关联多个过滤条件的,and关联的条件只有都满足才会展现出来
2、or操作符号
如果我们要搜索姓名为atom或年龄为22岁的所有人员,应该怎么办呢?
可以使用or操作符来表示,在where中用or来关联两个过滤条件
SELECT name,age from person where name = "atom" or age = 22
搜索姓名和年龄从person表中,姓名为atom或者年龄为22的所有数据
or也是用来关联多个条件的,但是or和and正反,or可以理解成或,两个条件只要有一个满足就会搜索出结果
3、and和or同时使用(运算顺序)
这次先看两个搜索条件
(1)SELECT name,age from person WHERE (name = "atom2" or name = "atom") and age >100
(2)SELECT name,age from person WHERE name = "atom2" or name = "atom" and age >100
这两个的区别是什么呢?
第一个问题的搜索结果是:
第二个问题的搜索结果是:
两个区别是:
第一个搜索的内容意思是要查询姓名为atom或者atom2并且年龄大于100岁的所有的数据
第二个搜索的内容意思是要查询姓名为atom并且年龄大于100岁的数据或者姓名为atom2的所有数据
在sql的运算规则中,如果and和or同时存在,在处理or操作符前会优先处理and操作符,所以如果想要先查询or或的语句再查询and的语句,一定要带上括号。
可扫描二维码关注公众号:刘阿童木的进化记录 大家一起学习进步