between区间查询在mysql中如何使用

来源:这里教程网 时间:2026-02-28 20:12:01 作者:

在 MySQL 中,BETWEEN 操作符用于选取介于两个值之间的数据范围,常用于

WHERE
子句中进行区间查询。它支持数字、日期和字符串类型的比较,语法简洁且高效。

基本语法

BETWEEN 的基本用法如下:

SELECT 列名 FROM 表名 WHERE 列名 BETWEEN 值1 AND 值2;

这个条件是闭区间,包含“值1”和“值2”本身。

查询数值范围

比如查询成绩在 80 到 90 分之间的学生:

SELECT * FROM students WHERE score BETWEEN 80 AND 90;

等同于:

SELECT * FROM students WHERE score >= 80 AND score <= 90;

查询日期范围

对日期字段使用 BETWEEN 非常常见,例如查找某段时间内注册的用户:

SELECT * FROM users WHERE register_date BETWEEN '2024-01-01' AND '2024-12-31';

确保日期格式正确(YYYY-MM-DD),MySQL 会自动识别标准日期字符串。

查询字符串范围

也可以用于字符字段,按字母顺序筛选:

SELECT * FROM products WHERE name BETWEEN 'apple' AND 'mango';

这会选出名称从 "apple" 开始到 "mango" 结束(含)之间的所有记录,注意大小写敏感性取决于字段的排序规则(collation)。

结合 NOT 使用反向区间

如果想查询不在某个区间的记录,可以加 NOT

SELECT * FROM orders WHERE amount NOT BETWEEN 100 AND 500;

这将返回金额小于 100 或大于 500 的订单。

基本上就这些。BETWEEN 让区间查询更直观,但要注意边界包含问题,以及数据类型匹配,避免隐式转换导致性能下降或结果异常。配合索引字段使用效果更佳。

相关推荐

热文推荐