IN条件との句は、入力値、このようなwhere句のcase文として@inputとストアドプロシージャで、使用する場所でのCASE文:信じられないほどSQL Serverの:私は希望
SELECT my_column
FROM MY_TABLE
WHERE MY_TABLE.my_column in (CASE WHEN @input = '1' THEN ('A','B','C') ELSE ('A') END)
、私は上記のように望んでいた
SELECT my_column
FROM MY_TABLE
WHERE MY_TABLE.my_column in (CASE WHEN @input = '1' THEN ('C') ELSE ('A') END)
は私がCASE
文でIN
条件を使用することができます。私は「THEN」このような後に一つの値だけを置いたときにそれが動作しますか?私がしたいことをするための別の方法がありますか?
はあなたの最初のクエリに問題がCASE
戻ったばかりのスカラー値ということである
CLJ
'T-SQLでCASE'は(単にA + B''など)**表現**である - ない*声明* - これは最終的に1つの単一の原子値で置き換えられます –