Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Riutilizza il campo con alias nell'istruzione SQL SELECT

Una soluzione alternativa sarebbe utilizzare una sottoquery:

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

Per migliorare la leggibilità potresti anche utilizzare un CTE :

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