- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:WHERE句の内部でWHEN)
WHERE句の内部でWHEN
このQ&Aのポイント
- SELECT文のWHERE句内で条件を切り替えるための方法について質問です。
- 特定の条件が満たされた場合にのみWHERE句の条件を変更したい場合、どのような記述が適切でしょうか?
- テスト環境がないため、初心者なりに考えましたが、アドバイスをいただきたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
(1)WHENという構文は、聞いたことがありません。 CASE式内でのWHENの誤り? (2)HOGEHOGEというのは、列名ですか? 文字定数なら、'HOGEHOGE'ですよね? (3)X.COLA=99は検索されなくていいのですか? 普通に、以下のように記述することに問題があるのでしょうか? WHERE X.COLA = Y.COLC AND (X.COLB = 'HOGEHOGE' AND X.COLA > 100 OR X.COLB <> 'HOGEHOGE' AND X.COLA < 99) 「等しくない」という条件が必要になってしまう段階で、「インデクスを定義しても使用できない」という問題が、質問時点で存在してしまっていますが、詳しい情報がないのでこれ以上はコメントしません。
お礼
慌てていたもので、ご指摘いただいた数々の矛盾点 申し訳ありませんでした。 ご教授頂いた検索条件でなんら問題はないです。 質問をする前にもう少し自分で考えた方が良かったと反省しております。 ありがとうございました。