我有一個查詢(簡體),其計算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