Можно ли назначить список строк переменной для использования в операторе IN без использования динамического SQL?
Я разрабатываю отчет в SSRS, который позволяет пользователю выбрать одно из трех возможных значений в качестве параметра, который, в свою очередь, назначит значения, связанные с этим выбором, для оператора IN. Некоторые параметры имеют одно значение, а некоторые - несколько.
Случаи 1 и 2 работают правильно, а случай 3 - нет, потому что они передаются как скалярное значение вместо списка. Я пробовал разные способы избежать кавычек вокруг каждого элемента, но он не работает.
declare @items as varchar(50)
set @items =
CASE @parameter
WHEN 1 then 'first'
WHEN 2 then 'second'
WHEN 3 then 'third, fourth'
END
select column1
from table1
where column1 IN (@items)