• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL Server Where句 Case文)

SQL Server Where句 Case文の使い方と注意点

このQ&Aのポイント
  • SQL ServerのWhere句内で利用するCase文の使い方と注意点について説明します。
  • Case文を使って異なる条件をセットすることで、パラメータの値によってSQLの条件を変更することができます。
  • しかし、質問文にあるような方法では正しく動作しませんので、正しい記述方法について説明します。

質問者が選んだベストアンサー

  • ベストアンサー
  • Picosoft
  • ベストアンサー率70% (274/391)
回答No.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) ) とした方がよいかと思います。

kyokotan12
質問者

お礼

Picosoft さん お世話になります。 ご指摘のコードでやりたいことが実現できました。 パラメータと抽出データはANDでセットしなければいけないんですね。とても勉強になりました。 ありがとうございました。

関連するQ&A