DB の最適化 / メモリ管理については、ほとんど何も知りません。
次のようなクエリがあります。
SELECT Value
FROM ValueTable
WHERE SomeConstraint > 4
このクエリの結果と、このクエリの結果に WHERE 句を 1 つ追加する必要があります。これら2つのアプローチのどちらが優れていますか?
1) そのクエリの結果を変数に選択します。次に、2 つの追加クエリを用意します。
SELECT COUNT(DISTINCT(VALUES))
FROM @SavedQuery
SELECT COUNT(DISTINCT(VALUES))
FROM @SavedQuery
WHERE otherConstraintColumn < 30
2)
SELECT COUNT(DISTINCT(Value))
FROM ValueTable
WHERE SomeConstraint > 4
SELECT COUNT(DISTINCT(Value))
FROM ValueTable
WHERE SomeConstraint > 4
AND otherConstraintColumn < 30
これは LINQ で記述される可能性があるため、クエリの結果を保存する方法である可能性があります。