- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL Server Where句 Case文)
SQL Server Where句 Case文の使い方と注意点
このQ&Aのポイント
- SQL ServerのWhere句内で利用するCase文の使い方と注意点について説明します。
- Case文を使って異なる条件をセットすることで、パラメータの値によってSQLの条件を変更することができます。
- しかし、質問文にあるような方法では正しく動作しませんので、正しい記述方法について説明します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
CASE WHEN @D = 0 THEN (dbo.TEST.D = dbo.TEST.D) '全データを WHEN @D = 1 THEN (dbo.TEST.D = 1) '値が1のデータを WHEN @D = 2 THEN (dbo.TEST.D = Is Null) 'データがNull のものを ↓ ((@D = 0 AND dbo.TEST.D = dbo.TEST.D) OR (@D = 1 AND dbo.TEST.D = 1) OR (@D = 2 AND dbo.TEST.D = Is Null) ) とした方がよいかと思います。
お礼
Picosoft さん お世話になります。 ご指摘のコードでやりたいことが実現できました。 パラメータと抽出データはANDでセットしなければいけないんですね。とても勉強になりました。 ありがとうございました。