У меня есть этот код:Как я могу моделировать несколько проверок IF?
IF (@TestStatusId = @MarkedByUser)
BEGIN
DECLARE @NOOP1 BIT;
END
ELSE
BEGIN
DECLARE @NOOP2 BIT;
END
Я хотел бы иметь три условия. Когда @TestStatusId = @MarkedByUser, @TestStatusId = @MarkedByAdmin и по умолчанию, когда @TestStatusId - это что-то еще.
Есть ли способ, которым я могу это сделать без нескольких проверок IF?
Вот что я хочу, но синтаксис не кажется, действительно:
CASE @TestStatusId
WHEN @MarkedByAdmin THEN BEGIN DECLARE @NOOP1 BIT; END
WHEN @MarkedByUser THEN BEGIN DECLARE @NOOP2 BIT; END
ELSE DECLARE @NOOP3 BIT;
END
Что вы хотите в каждом случае? Объявлять разные переменные? Или некоторые переменные имеют разные значения? – Andrew
Я хотел бы иметь код, который работает, чтобы заменить эти DECLAREs. Просто поместите их туда, чтобы вопрос был коротким. – Alan2
Скорее всего, вам придется использовать несколько (возможно, вложенных) 'IF'. 'CASE' - это одно выражение, которое имеет единственный результат одного типа, вы не можете поместить этот код в' CASE'. –