简单问题...有没有办法在一个语句中将数字与两个数字进行比较?事情是这样的:在一个语句中一次比较两次评估数
where 1000 > 500 > 300
的原因是,如果我需要评估的500和它的价格昂贵,这将节省大量的时间在替代:
where 1000 > 500
and 500 > 300
简单问题...有没有办法在一个语句中将数字与两个数字进行比较?事情是这样的:在一个语句中一次比较两次评估数
where 1000 > 500 > 300
的原因是,如果我需要评估的500和它的价格昂贵,这将节省大量的时间在替代:
where 1000 > 500
and 500 > 300
你可以写
where 500 between 301 and 999
或
select a,b,c from (
select a,b,c, 500 as d from ....
) where 1000 > d and d > 300
,但也希望数据库足够聪明,以确定它只需要进行一次计算。
呵呵!谢谢! :D – kentcdodds 2012-08-03 02:10:28
我认为您需要查看上述查询的查询计划以及下面提供的解决方案。实际采取的路径可能是相同的。 – OraNob 2012-08-03 10:45:35