mysql条件查询and or使用方法及优先级实例分析

zhangjunguo00 2020-04-23

本文实例讲述了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的数据:

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。

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》

希望本文所述对大家MySQL数据库计有所帮助。

相关推荐