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

sql server utilizza la colonna calcolata

No, non è possibile fare riferimento all'alias di colonna definito allo stesso livello. Le espressioni che appaiono nella stessa fase di elaborazione della query logica vengono valutate come se nello stesso punto in tempo .

Come dice Joe Celko

Puoi comunque definirlo in un CTE e quindi riutilizzarlo al di fuori del CTE.

Esempio

WITH T
     AS (SELECT ( price1 + price2 + price3 ) AS total_price,
                price4
         FROM   prices)
SELECT total_price,
       ( price4 + total_price ) AS total_price2
FROM   T