9 MySQL数据库条件查询之BETWEEN, IN, LIKE, IS NULL
在上一篇文章中,我们讨论了如何使用WHERE
子句进行条件查询。在本篇中,我们将深入探讨其他几种非常有用的条件查询方法:BETWEEN
、IN
、LIKE
和IS NULL
。这些方法可以帮助你在MySQL数据库中更灵活地检索数据。
1. 使用BETWEEN
BETWEEN
运算符用于选择在两个值之间的范围,包括这两个值本身。它通常与日期或数字数据类型结合使用。
示例
假设我们有一个名为 employees
的表,结构如下:
id | name | hire_date | salary |
---|---|---|---|
1 | Alice | 2020-01-10 | 60000 |
2 | Bob | 2018-03-15 | 75000 |
3 | Charlie | 2021-06-20 | 50000 |
4 | David | 2019-07-30 | 80000 |
我们想查询在 2019-01-01
和 2021-12-31
之间被雇佣的员工。我们可以使用如下的 SQL 查询:
1 | SELECT * FROM employees |
查询结果
该查询将返回对于雇佣日期在指定范围内的所有记录。
2. 使用IN
IN
运算符用于指定多个值,其中任一值都可以满足条件。这对于需要在一个字段中检查多个可能值的情况非常有用。
示例
继续使用 employees
表,如果我们想查询员工的名字为 Alice
或 Bob
的记录,可以使用如下的语句:
1 | SELECT * FROM employees |
查询结果
该查询将返回名为 Alice
和 Bob
的两位员工记录。
3. 使用LIKE
LIKE
运算符用于在字符串中进行模式匹配。它允许使用通配符,%
代表零个或多个字符,_
代表单个字符。
示例
假设我们想查询所有名字中包含字母 a
的员工,可以使用如下的 SQL 查询:
1 | SELECT * FROM employees |
查询结果
该查询将返回所有名字中含有字母 a
的员工记录,例如 Alice
和 David
。
4. 使用IS NULL
IS NULL
用于查询某个字段的值是否为NULL
。这在处理可能为空的数据时非常重要。
示例
假设我们在 employees
表中新增一个 bonus
字段,代表员工的奖金。在某些情况下,奖金可能尚未分配,于是字段值为 NULL
。我们想查询所有奖金未分配的员工记录:
1 | SELECT * FROM employees |
查询结果
该查询将返回所有 bonus
字段为 NULL
的员工记录。
小结
在本篇文章中,我们学习了如何使用 BETWEEN
、IN
、LIKE
和 IS NULL
来进行条件查询。这些查询方法极大地增强了我们从数据库中提取所需信息的能力。
在下一篇文章中,我们将进入聚合函数的世界,学习如何使用 COUNT
、AVG
、SUM
、MIN
和 MAX
来处理和分析数据。这些函数将帮助我们总结和提取有价值的信息,以便进一步分析数据集。
如有疑问,欢迎在评论区留言讨论!
9 MySQL数据库条件查询之BETWEEN, IN, LIKE, IS NULL