sql >> Database teknologi >  >> RDS >> Oracle

Sådan bruger du en beregnet kolonne til at beregne en anden kolonne i samme visning

Du kan bruge en indlejret forespørgsel:

Select
  ColumnA,
  ColumnB,
  calccolumn1,
  calccolumn1 / ColumnC as calccolumn2
From (
  Select
    ColumnA,
    ColumnB,
    ColumnC,
    ColumnA + ColumnB As calccolumn1
  from t42
);
 

Med en række med værdierne 3 , 4 , 5 der giver:

COLUMNA COLUMNB CALCCOLUMN1 CALCCOLUMN2 ---------- ---------- ----------- ----------- 3 4 7 1.4

Du kan også bare gentage den første beregning, medmindre det virkelig gør noget dyrt (via et funktionskald, for eksempel):

Select
  ColumnA,
  ColumnB,
  ColumnA + ColumnB As calccolumn1,
  (ColumnA + ColumnB) / ColumnC As calccolumn2
from t42; 

   COLUMNA    COLUMNB CALCCOLUMN1 CALCCOLUMN2
---------- ---------- ----------- -----------
         3          4           7         1.4 
 


  1. Konverter Datetime-kolonnen fra UTC til lokal tid i select statement

  2. MySQL - Hvordan søger man efter eksakt ordmatch ved hjælp af LIKE?

  3. Sådan genereres scripts for at føje standardbegrænsninger til kolonne i flere tabeller i SQL Server-database - SQL Server / TSQL vejledning del 94

  4. Returner flere felter som en post i PostgreSQL med PL/pgSQL