sql - MySQL "between"子句不包含?

标签 sql mysql between

如果我使用 between 子句运行查询,它似乎排除了结束值。
例如:

select * from person where dob between '2011-01-01' and '2011-01-31'

这将获得从 '2011-01-01' 到 '2011-01-30' 的所有带有 dob 的结果;跳过 dob 为 '2011-01-31' 的记录。谁能解释为什么这个查询会这样,以及我如何修改它以包含 dob 为“2011-01-31”的记录? (结束日期不加 1,因为它是由用户选择的。)

最佳答案

来自 MySQL-manual :

This is equivalent to the expression (min <= expr AND expr <= max)

关于sql - MySQL "between"子句不包含?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5080824/

相关文章:

SQL Server 存储过程包含文件语句

mysql - 如何在 SQL 查询中忽略空参数

MySQL join 两个独立的查询结果

php - 如何使用 fetch() 获得与 fetchAll() 相同的结果?

mysql - 查找 1.00 美元以内的货币/金额

Pandas 合并两个 df,其中 df1.column 是 = 或在 df2.column1 和 df2.column2 之间

mysql - SQL表中的用户ID号自动递增

java - jOOQ:如何在选择查询中调用Sql用户定义的函数

sql - 如何遍历结构的字段以进行查询过滤

php - MySQL获取上述两个日期变量之间/之上的记录