#tsql #select #case
#tsql #выберите #регистр
Вопрос:
То, чего я хочу достичь, действительно просто. У меня есть оператор Select, в котором есть параметр @age
, связанный с выпадающим списком. @age
Параметр используется для столбца AGE.
Теперь этот выпадающий список имеет значение по умолчанию ALL, которое при выборе должно отображать любое значение в столбце AGE. Вот моя логика:
SELECT * FROM tableaGE
where ([AGE] = CASE WHEN @Age = 'ALL' THEN ??? ELSE @Age END)
Я не могу найти документацию в Интернете по этой теме. Что мне поставить вместо ???. Я пробовал с помощью *, но он выдает синтаксическую ошибку. Спасибо
Ответ №1:
Это было действительно просто, просто поместите имя поля вместо ???
where ([AGE] = CASE WHEN @Age = 'ALL' THEN [AGE] ELSE @Age END)