我有一个查询(简体),其计算C
:商店查询结果或使用嵌套查询
SELECT A + B AS C FROM Foo
查询返回50万行。
我需要选择行的地方C < 0.3。要做到这一点,我将结果插入到一个临时表#Bar
INSERT INTO #Bar
SELECT A + B AS C FROM Foo
和适用条件
SELECT *
FROM #Bar
WHERE C < 0.3
按照执行计划Table Insert
成本86%。有没有更好的方法来获得C < 0.3
? 我试过一个嵌套查询,它是一样的。
不能使用where子句,比如“WHERE A + B <0.3”吗? – Arvo 2014-09-23 13:52:14
您不能只看执行计划百分比(特别是因为您正在比较读取和写入)。整个事情**总共有100%,所以很可能一件*会比另一部分计划贵。它是相对的,并且告诉你**关于该部分查询/批处理的实际执行时间的很少**。你必须看看提供给你的所有信息。 – alroc 2014-09-23 14:00:32
那么,A + B实际上是一个包含6个大公式的CASE – hidarikani 2014-09-23 14:03:50