【前言】

小编今天来总结总结SQL中WHERE子句涉及到的相关知识点

【正文】

利用WHERE子句过滤结果,它指定了一个条件,只有满足该条件的行才会被返回或操作

WHERE子句由关键字WHERE后跟一个逻辑表达式或条件组成。这个逻辑表达式可以包含一个或多个条件,用于指定数据行必须满足的条件,以下是一些常见的操作符:

  1. 比较操作符:

    • 等于:=
    • 不等于:<> 或 !=
    • 大于:>
    • 小于:<
    • 大于等于:>=
    • 小于等于:<=
  2. 逻辑操作符:

    • AND:用于组合多个条件,要求所有条件都满足。
    • OR:用于组合多个条件,要求至少一个条件满足。
    • NOT:用于否定一个条件。
  3. 包含操作符:

    • IN:用于指定一个值列表,检查某个列是否在该值列表中。
    • NOT IN:用于指定一个值列表,检查某个列是否不在该值列表中。
    • BETWEEN:用于指定一个范围,检查某个列是否在该范围内。
    • NOT BETWEEN:用于指定一个范围,检查某个列是否不在该范围内。
    • LIKE:用于模式匹配,可以使用通配符进行模糊匹配。
  4. 空值操作符:

    • IS NULL:用于检查某个列是否为NULL。
    • IS NOT NULL:用于检查某个列是否不为NULL。

MyTable
IdNameDateOfBirthAdress
3索菲亚1997-09-01USA
1贝拉1999-08-07CN
2爱德华1998-04-20CN
4雅各布1998-11-28FA

一.WHERE+指定条件

SELECT Id, Name, DateOfBirth, Adress
FROM MyTable 
WHERE Id=1;

查询Id为1的学生

二.WHERE+比较操作符

常见的比较操作符有:

  • =:等于
  • <>!=:不等于
  • <:小于
  • >:大于
  • <=:小于等于
  • >=:大于等于

1.运算符“<”

SELECT Id, Name, DateOfBirth
FROM MyTable 
WHERE DateOfBirth < '2000-01-01';

查询出生在2000年之前的学生

2.运算符“=”

SELECT Id, Name, Adress
FROM MyTable 
WHERE Adress ='FA';

查询住在FA的学生


 

三.WHERE+逻辑操作符

常见的逻辑操作符有:

  • AND:逻辑与,所有条件都必须为真
  • OR:逻辑或,任一条件为真即可
  • NOT:逻辑非,取反条件的结果

 1.运算符“AND”

SELECT Id, Name, DateOfBirth
FROM MyTable 
WHERE DateOfBirth > '1998-01-01' AND DateOfBirth <'1999-01-01';

查询出生在1998-1999年之间的学生

2.运算符“or”

SELECT Id, Name, Adress
FROM MyTable 
WHERE Id=3 or Adress='CN';

查询Id为3,或者居住在CN的学生信息

3. 运算符“not”

SELECT Id, Name, Adress
FROM MyTable 
WHERE not Adress='CN';

查询不居住在CN的学生信息

四.WHERE+通配符

常见的通配符有:

  • %:匹配任意字符(零个或多个)
  • _:匹配任意单个字符

运算符“like”,当使用是需要结合通配符使用“%”

①、a%:查询以字母a开头的数据

SELECT Id, Name, Adress
FROM MyTable 
WHERE Adress like 'U%';

查询地址中以字母“U”开头的学生

②、%a:查询以字母a结尾的数据

SELECT Id, Name, Adress
FROM MyTable 
WHERE Adress like '%N';

查询地址中以字母“N”结尾的学生

③、%a%:查询包含字母a的数据

SELECT Id, Name, Adress
FROM MyTable 
WHERE Adress like '%A%';

查询地址中包含字母“A”的学生

五、WHERE+BETWEEN子句

SELECT Id, Name, Adress
FROM MyTable 
WHERE Id BETWEEN 2 AND 4;

查询Id在2到3之间的学生信息

【总结】

WHERE子句中可以使用的运算符

运算符说明
<小于
>大于
=等于
AND并列
OR或者
NOT不包含
BETWEEN表示范围
LIKE特殊查询

WHERE子句可以使用比较运算符(如等于、大于、小于等)、逻辑运算符(如AND、OR、NOT等)和通配符(如LIKE)来构建条件表达式。它允许你根据特定的条件来选择、更新或删除数据库中的数据。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐