O seguinte é ilegal.
SELECT
schema_id + 2 AS evil_column
FROM
sys.tables
ORDER BY
evil_column + 3;
Se você remover o + 3
, então é legal.
Supondo que eu queira fazer aritmética com evil_column
e ORDER BY
o resultado, mas não queira repetir a definição de evil_column
em lugar nenhum, quais são minhas opções?
Não, não diretamente
mas você sempre pode usar um CTE como Etapa
Você pode usar várias delas
CROSS APPLY
que se alimentam umas das outras para adicionar colunas "virtuais".