Выберите все значения столбца с РЕГИСТРОМ в предложении WHERE

#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)