0

このようなものがすでに出てきている場合は事前にお詫び申し上げますが、私はそれを見つけることができません.

@xID のリストを含む一時テーブルを宣言しました。

私のメインクエリでは、特定のレコードがテーブルにID表示されるかどうかを確認してから、それぞれまたは@xを返したいと考えています。'Yes''No'

次のケース when ステートメントを試しました。

select (case when xsup_ID in @x then 'YES' else 'NO' end) as Ins

しかし、実行時にエラーが発生します:

条件が予想されるコンテキストで指定された非ブール型の式

'@x' 付近の構文が正しくありません

上記のステートメントを使用することは可能ですか?そうでない場合、これを解決する最善の方法は何ですか?

4

2 に答える 2

1
select (case when xsup_ID in (select id from @x) then 'YES' else 'NO' end) as Ins

つまり、テーブル変数自体ではなく、1 つの列のサブクエリに対して IN をテストする必要があります。

于 2013-05-03T11:39:21.667 に答える
0
select (case when CHARINDEX(xsup_ID ,@x) > 0 then 'YES' else 'NO' end)
于 2013-05-03T11:43:03.950 に答える