次のようなコマンドを実行する SQL Server ストアド プロシージャがあります。
SELECT TOP(25)
col_charname, col_axexp
FROM
tbl_characters
WHERE
GETUTCDATE() < DATEADD(DAY, 30, col_lastlogin)
ORDER BY
col_axexp DESC
そして、ストアド プロシージャがオプションで .xml に別の制限を指定できるようにしたいと思いますWHERE
。parameter との整数比較@par_vocation
。
SELECT TOP(25)
col_charname, col_axexp
FROM
tbl_characters
WHERE
GETUTCDATE() < DATEADD(DAY,30, col_lastlogin)
AND col_vocation = @par_vocation
ORDER BY
col_axexp DESC
ただし、@par_vocation
null の場合 (または、任意の固定値を使用できる場合)、追加の制限を無視したいと思います (最初のステートメントのように機能させたい)。
T-SQLIF
句を使用して両方のステートメントを同じプロシージャに含めることができることはわかっていますが、SP にはこれらのステートメントが既に多数あり、このストアド プロシージャが大きくなるのが心配です。
これを機能させる方法はありますか?