IDのリストを返す複雑なクエリを作成しました。次に、このクエリを再利用して、結果を別のクエリと結合します。そのために、これをストアドプロシージャまたはUDFに配置し、それを使用して一時テーブルに挿入する予定です。
以下のようなもの
1)クエリをストアドプロシージャに配置し、一時テーブルに挿入します
INSERT INTO #TEMP
EXEC SP_COMPLEX(@PARAM1,@PARAM2...@@PARAMN)
2)クエリをUDFに入れ、一時テーブルに挿入します
INSERT INTO #TEMP
SELECT ID_LIST FROM DBO.UDF_COMPLEX(@PARAM1,@PARAM2...@@PARAMN)
1000 IDの結果で実行した場合、2つの間の有意差はわかりません。しかし、実際の実装では、結果は100万行になる可能性があります。
パフォーマンスのためにどちらが良いでしょうか?