Mysql
主页 > 数据库 > Mysql >

mysql条件查询and or使用方法及优先级

2020-04-23 | 秩名 | 点击:

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的数据:

 
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" 的数据:

 
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 结合起来(使用圆括号来组成复杂的表达式):

 
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语句,如:

 
select * from table from id=1 or id=2 and price>=10;
/* http://www.manongjc.com/article/1439.html */
 

这条语句默认执行的是id=2并且price大于等于10的,或者是id=1。

如果加上括号:

 
select * from table from (id=1 or id=2) and price>=10;
 

则这条语句执行的是id=1或id=2,并且price大于等于10。

原文链接:https://www.cnblogs.com/ryanzheng/p/7894688.html
相关文章
最新更新