Можно ли использовать case в предложении where in? Что-то вроде этого:
DECLARE @Status VARCHAR(50);
SET @Status='published';
SELECT * FROM Product P
WHERE P.Status IN (CASE WHEN @Status='published' THEN (1,3)
WHEN @Status='standby' THEN (2,5,9,6)
WHEN @Status='deleted' THEN (4,5,8,10)
ELSE (1,3)
END)
Этот код выдает ошибку: Неверный синтаксис рядом с ','.
case
вwhere
, но не так.Case
должен возвращать одно значение для каждого оператора. - person Sean   schedule 09.10.2013