四时宝库

程序员的知识宝库

MySQL查询2_WHERE语句(mysql wherein)

一般情况下,数据的量是非常大,也不可能全量的去查询数据,都是根据业务需求去查询满足条件的数据。在MySQL中,如果需要有条件的从数据表中查询数据,使用WHERE关键字来指定查询条件。

查询条件有很多类型,如下一些,这里先演示一下前两个,下一篇介绍后面三个关键字的使用方法↓

  • 比较运算符和逻辑运算符的查询条件
  • BETWEEN AND关键字的查询条件
  • IS NULL关键字的查询条件
  • IN关键字的查询条件
  • 带LIKE关键字的查询条件


【单条件查询】

查询产品id为18的订单数据明细,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  产品id = '18'

查询单价大于1000元的订单数据明细,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  单价 > 1000


【多条件查询】

多个查询条件时用逻辑运算符AND(&&)、OR(||)或XOR隔开。

  • AND:记录满足所有查询条件时,才会被查询出来;
  • OR:记录满足任意一个查询条件时,才会被查询出来;
  • XOR:记录满足其中一个条件,并且不满足另一个条件时,才会被查询出来。

查询单价大于1000元,并且产品id为17的订单数据明细,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  单价 > 1000 
  AND 产品id = '17'

查询数量大于5,并且单价小于1000 的订单记录和数量小于5,并且单价大于1000的订单记录,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  数量 > 5 XOR 单价 < 1000


【BETWEEN AND范围查询】

BETWEEN AND需要两个参数,即范围的起始值和终止值。如果字段值在指定的范围内,则这些记录被返回。如果不在指定范围内,则不会被返回。

BETWEEN AND的基本语法格式如下:

[NOT] BETWEEN 取值1 AND 取值2
  • NOT:可选参数,表示指定范围之外的值。如果字段值不满足指定范围内的值,则这些记录被返回;
  • 取值1:表示范围的起始值;
  • 取值2:表示范围的终止值。


查询单价在600-800之间的订单,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  单价 BETWEEN 600 AND 800


查询单价不在600-800之间的订单,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  单价 NOT BETWEEN 600 AND 800


查询日期在2021.01.01-2020.01.31之间的订单,SQL语句如下↓

SELECT
  * 
FROM
  sql_study.`order` 
WHERE
  日期 BETWEEN '2021-01-01' AND '2021-01-31'

End

~更多内容可关注微信同名公众号:Lin王发林

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接