私のクエリはここに投稿するよりもはるかに複雑ですが、sp_execute
SQL の使用中に変数を使用することができません...回避策はありますか?
declare @system_status varchar(30)
select @system_status = '12,20'
declare @sql nvarchar(4000)
select @sql = 'SELECT [system_status]
FROM VW_Document_Main
WHERE 1=1 '
IF @system_status IS NOT NULL AND @system_status NOT IN ('-1','0')
BEGIN
SELECT @sql = @sql + 'and (',''+@system_Status+'',') LIKE ''%,''+system_Status+'',%'''
文字列を SQL の最後に連結し、最終的には次を使用してクエリを実行しようとしていますsp_executesql
ただし、連結に関してエラー メッセージが表示されます。
変数に値を代入する SELECT ステートメントは、データ取得操作と組み合わせてはなりません。
それを修正/回避する方法についてのアイデアはありますか??
....それは恥ずかしいことですが、SELECTの代わりにSETを使用するとうまくいきました...