Это может быть довольно простой вопрос, однако я не могу найти ответ на этом сайте (или любом другом).
У меня довольно большое выражение CASE, которое мне нужно использовать в скрипте несколько раз. Мой скрипт выглядит примерно так:
SELECT
CASE
WHEN ...
WHEN ...
...
END as long_case_expression
FROM table
GROUP BY
CASE
WHEN ...
WHEN ...
...
END
Было бы намного проще, если бы я мог заменить это большое количество выражений WHEN переменной или псевдонимом. Таким образом, мой сценарий не будет раздут большим количеством выражений КОГДА, и мне нужно только редактировать в одном месте. Итак, я хочу, чтобы это выглядело так:
SELECT
CASE
@tinyvariable
END
FROM table
GROUP BY
CASE
@tinyvariable
END
Я попытался просто объявить @tinyvariable в качестве VARCHAR и установить @tinyvariable равным огромной строке выражений WHEN, но, думаю, SQL это не нравится. Итак, мне нужна помощь кого-то, кто знает, что они делают. Пожалуйста, помогите.
Как примечание, я использую SQL Server 2008.