ストアドプロシージャからページ化された結果を取得するために行番号を使用しています。
動的なcaseステートメントの列名を使用した順序付けは処理速度を低下させていることがわかりましたが、すべての順序をハードコーディングすれば問題ありません。
WHOLE sqlクエリを1つの文字列にすることなく、SP_EXECUTESQLを使用して、動的な順序を高速化する方法はありますか?
ROW_NUMBER() OVER (ORDER BY
CASE WHEN @OrderByColumnName = 'IdentityValue' AND @OrderAscending = 0 THEN CLH.IdentityValue END DESC,
CASE WHEN @OrderByColumnName = 'IdentityValue' AND @OrderAscending = 1 THEN CLH.IdentityValue END
--CLH.CustomerName
) AS [ROW]