在不复制表达式的情况下,非整数值(在我的实际情况下,值的计算方式如下,我不希望重现一个漫长的查询百分比):可容纳所有类型的测试非整数是否在范围[a,b) - 或[a,b],(a,b),(a,b)
SELECT * FROM SomeTable WHERE 1/100.0 >0 AND 1/100.0<=0.5
我感兴趣的是一个广义化界限:[],[)(]和()
在不复制表达式的情况下,非整数值(在我的实际情况下,值的计算方式如下,我不希望重现一个漫长的查询百分比):可容纳所有类型的测试非整数是否在范围[a,b) - 或[a,b],(a,b),(a,b)
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
你的代码真的没有按”没有意义。我假设你想在where子句中使用该表达式,而不是在select子句中使用该表达式。 – 2014-10-05 17:27:13
@GordonLinoff你是对的;我更新了这个问题 – 2014-10-05 17:42:51