条件付きでストアドプロシージャのWHERE部分に句を追加したいが、CASEを使用することが本当に悪いことを理解している。基本的に私がやろうとしていることは次のとおりです。CASEを使用せずに条件付きでWHERE句を追加する方法
@StartDate
@EndDate
@ClientID
SELECT field_1, field_2, datefield_3
from tblTable
Where datefield_3 Between @StartDate AND @EndDate
--If @ClientID > 0 then add
AND field_1 = @ClientID
お勧めはありますか?
'case'が最も使いやすい(そして最も速い)ツールであるケースは非常に多くあります。このケースはその1つではないかもしれませんが、テストしないで 'case'を除外して、どのように動作しているのかを確認しないでください。 – cco