変数の1つに入力を取得していて、基本的に次のようなことをしたい
SELECT * FROM PEOPLE
WHERE
IF @INPUT = 1
ITEMID = 16 OR ITEMID = 13
ELSE IF @INPUT = 2
ITEMID = 11 OR ITEMID = 14
ELSE
ITEMID = 0
これを行う方法はありますか?これが間違っている場合はご容赦ください。しかし、私は自分の問題をできるだけ簡単に理解できるように表現したいと思いました。
この前にCASEで試してみました
WHERE
CASE @INPUT
WHEN 1 THEN ITEMID = 16 OR ITEMID = 13
WHEN 2 THEN ITEMID = 11 OR ITEMID = 14
ELSE ITEMID = 0
END
しかし、これらのアプローチはすべてエラーをスローします。可能であれば、これを行うための良いアドバイス、より効率的な方法をいただければ幸いです。
お手伝いありがとう。