sql >> Database >  >> RDS >> Oracle

Een berekende kolom gebruiken om een ​​andere kolom in dezelfde weergave te berekenen

Je zou een geneste zoekopdracht kunnen gebruiken:

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

Met een rij met waarden 3 , 4 , 5 dat geeft:

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

Je kunt de eerste berekening ook gewoon herhalen, tenzij het echt iets duurs is (bijvoorbeeld via een functieaanroep):

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

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


  1. Alleen een rij invoegen als deze er nog niet is

  2. Query voor het tellen van verschillende waarden in een voortschrijdend datumbereik

  3. SQL-databases maken en manipuleren met Python

  4. Het laatste record in elke groep ophalen - MySQL