首页 > 数据库 > mysql教程 > MySQL 的 BETWEEN 子句是否包含上限?

MySQL 的 BETWEEN 子句是否包含上限?

DDD
发布: 2025-01-05 05:18:40
原创
517 人浏览过

Is MySQL's `BETWEEN` Clause Inclusive of the Upper Bound?

MySQL“ Between”子句:考虑到包容性

在MySQL查询中使用“ Between”子句时,必须考虑其非-关于最终值的包容性。例如,执行如下查询:

select * from person where dob between '2011-01-01' and '2011-01-31'
登录后复制

将检索出生日期 (DOB) 范围从“2011-01-01”到“2011-01-30”的结果,不包括带有 DOB 的记录'2011-01-31'。

此行为可归因于 MySQL 对“Between”的解释子句作为逻辑表达式,类似于:

(min <= expr AND expr <= max)
登录后复制

为了解释这一点并包含 DOB 为“2011-01-31”的记录,可以通过两种方式修改查询:

方法 1:使用比较运算符

通过使用比较运算符,查询可以显式检查两者上限和下限:

select * from person where dob >= '2011-01-01' and dob <= '2011-01-31'
登录后复制

方法 2:利用 NOT BETWEEN 运算符

或者,可以使用“NOT BETWEEN”运算符排除特定范围同时包含所需的端点:

select * from person where dob NOT BETWEEN '2011-01-02' and '2011-01-30'
登录后复制

以上是MySQL 的 BETWEEN 子句是否包含上限?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板