本文实例讲述了mysql条件查询and or使用方法及优先级。分享给大家供大家参考,具体如下:
mysql and与or介绍
AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。
使用OR关键字时:
- 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来。
- 如果不符合这些查询条件中的任何一条,这样的记录将被排除掉。
使用and关键字时:
- 需要符合所有条件,这样的记录就会被查询出来。
- 如果有任何一个条件不符合,这样的记录将被排除掉。
mysql and与or实例
本实例中需要使用到的表数据如下:
title | content | category | seo_name |
---|---|---|---|
php数组 | php数组使用分析 | 1 | php |
mysql distinct | mysql distinct实例 | 2 | mysql |
java array | java array使用方法 | 3 | java |
php input | php input如何获值 | 4 | php |
(1)AND条件查询运算符实例:
使用 AND 来显示所有title为 "php数组" 并且category为1的数据:
1
|
SELECT * FROM ar WHERE title= 'php数组' AND category= '1' |
结果:
title | content | category | seo_name |
---|---|---|---|
php数组 | php数组使用分析 | 1 | php |
(2)OR条件运算符实例
使用 OR 来显示所有title为 "java array" 或者seo_name为 "php" 的数据:
1
|
SELECT * FROM ar WHERE title= 'java array' OR seo_name= 'php' |
结果:
title | content | category | seo_name |
---|---|---|---|
php数组 | php数组使用分析 | 1 | php |
java array | java array使用方法 | 3 | java |
php input | php input如何获值 | 4 | php |
(3)结合 AND 和 OR 运算符
我们也可以把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式):
1
2
|
SELECT * FROM ar WHERE (title= 'java array' OR category= '4' ) AND seo_name= 'php' |
结果:
title | content | category | seo_name |
---|---|---|---|
php input | php input如何获值 | 4 | php |
and与or优先级
在where中可以包含任意数目的and和or操作符,在没有任何其他符号的时候,例如括号,SQL会首先执行and条件,然后才执行or语句,如:
1
2
|
select * from table from id=1 or id=2 and price>=10; |
这条语句默认执行的是id=2并且price大于等于10的,或者是id=1。
如果加上括号:
1
|
select * from table from (id=1 or id=2) and price>=10; |
则这条语句执行的是id=1或id=2,并且price大于等于10。
希望本文所述对大家MySQL数据库计有所帮助。
原文链接:https://www.cnblogs.com/ryanzheng/p/7894688.html