sql >> Database teknologi >  >> RDS >> PostgreSQL

PostgreSQL:ved hjælp af en beregnet kolonne i samme forespørgsel

Du skal pakke SELECT-sætningen ind i en afledt tabel for at få adgang til kolonnealiaset:

select cost1,
       quantity_1,
       cost_2,
       quantity_2
       total_1 + total_2 as total_3
from (
    select cost_1, 
           quantity_1, 
           cost_2, 
           quantity_2, 
           (cost_1 * quantity_1) as total_1,
           (cost_2 * quantity_2) as total_2
    from data
) t

Der vil ikke være nogen præstationsstraf på det.

(Jeg er virkelig overrasket over, at din originale SQL-sætning overhovedet kører i et DBMS)



  1. Kaldning af en lagret procedure inden for en lagret procedure

  2. SQL Server's Equivalent to Sleep():WAITFOR-erklæringen

  3. Hvad er forskellen mellem RANK() og DENSE_RANK() funktioner i oracle?

  4. Sådan fungerer funktionen TRANSLATE() i SQL Server (T-SQL)