Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Alias-Feld in SQL-SELECT-Anweisung wiederverwenden

Eine Problemumgehung wäre die Verwendung einer Unterabfrage:

SELECT
  FieldA,
  FieldA + 20 AS FieldB
FROM (
  SELECT 
    (CASE WHEN ...) AS FieldA
  FROM Tbl
) t

Um die Lesbarkeit zu verbessern, können Sie auch einen CTE verwenden :

WITH t AS (
  SELECT 
    (CASE WHEN ...) AS FieldA
  FROM Tbl
)
SELECT
  FieldA,
  FieldA + 20 AS FieldB
FROM
  t