mysql - 如何将MySQL Between用于Higher value to Lower value?

标签 mysql sql between

这里我提到查询:

低值 = 3, 上限值 = 6

SELECT * FROM SampleTable where tableDay BETWEEN 'lowerValue' AND 'upperValue';

这个查询工作正常,但我需要下面的查询类型

低值 = 3, 上限值 = 6

SELECT * FROM SampleTable where tableDay BETWEEN 'upperValue' AND 'lowerValue';

它作为空列表返回,因为两个值都是动态的,我做错了什么?

最佳答案

作为快速修复,您可以使用 GREATEST()/LEAST()比较函数:

SELECT *
FROM   SampleTable
WHERE  tableDay BETWEEN LEAST(upperValue, lowerValue) AND
                        GREATEST(upperValue, lowerValue);

但如果 upperValue 可以小于 lowerValue 则使用不同的名称。

关于mysql - 如何将MySQL Between用于Higher value to Lower value?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38389554/

相关文章:

mysql - 数据库设计有两个不同的表

php - 显示过去几天的结果

MySQL基于另一个表多次插入可变数量的行

mysql - 如何生成一个查询,该查询考虑来自一个表的数据并相应地为mysql中的不匹配字段填充0

MySQL 命令之间返回错误的 IP 地址或数字

mysql - SQL NOT BETWEEN 查询

mysql - 如何在MySQL中将表与条件的结果字段连接起来

javascript - 使用 jquery 忽略链接、复选框……在可编辑的 html 字段中

SQLite 删除表别名

带有时间间隔的日期之间的mysql查询