在不重现产生非整数值的表达式的情况下实现以下目标的惯用方法是什么(在我的真实情况下,该值是在我不想重现的冗长查询之后计算为百分比的):
SELECT * FROM SomeTable WHERE 1/100.0 >0 AND 1/100.0<=0.5
我对可以容纳所有类型边界的通用模式很感兴趣:[]、[]、(] 和 ()。
最佳答案
如果你不想重写表达式,那么使用子查询:
select t.*
from (select 1/100.0 as x
. . .
) t
where x > 0 and x <= 0.5
对于两个nds相等的特殊情况,那么你可以使用between
:
where 1/100.0 between 0 and 0.5
关于sql - 测试非整数是否在 [a,b) - 或 [a,b], (a,b), (a,b] 范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26205224/