предложение в SQL Server. +1 Для второго запроса, который потенциально будет более эффективным, так как он позволяет искать диапазон индекса, а не весь просмотр.

ли фильтровать записи в SQL Server, используя выражение результата (weight_class) изCASE выражение вWHERE статья? Я не могу заставить его работать, потому что я получаю сообщение об ошибке:

Неверное имя столбца 'weight_class'

Код:

SELECT 
    first_name, last_name, 
    weight_class = CASE
                      WHEN weight < 172 THEN 'Welterweight'
                      WHEN weight <= 192 THEN 'Middleweight'
                      WHEN weight <= 214 THEN 'Light heavyweight'
                      WHEN weight <= 220 THEN 'Cruiserweight'
                      ELSE 'Heavyweight'
                   END
FROM 
    athletes

Вот как я хочу сделать:

SELECT 
    first_name, last_name, 
    weight_class = CASE
                      WHEN weight < 172 THEN 'Welterweight'
                      WHEN weight <= 192 THEN 'Middleweight'
                      WHEN weight <= 214 THEN 'Light heavyweight'
                      WHEN weight <= 220 THEN 'Cruiserweight'
                      ELSE 'Heavyweight'
                   END
FROM 
    athletes
WHERE 
    weight_class = 'Cruiserweight'

Ответы на вопрос(1)

Ваш ответ на вопрос