mysql数据表中带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关键字匹配字符串时可以使用“%”和“_”等通配符。
以上就是 mysql进阶(五)数据表中带or的多条件查询的内容。