Ich habe folgende vereinfachte Abfrage:Mysql Wiederverwendung von Summen von Unterabfragen
Select
(select sum(f1) from tableA a where a.id = t.id) sum1,
(select sum(f2) from tableB b where b.id = t.id) sum2,
t.*
from Table t;
Mein Wunsch ist sum1 und sum2 wieder verwendet haben, ohne sie erneut Berechnung:
Select
(select sum(f1) from tableA a where a.id = t.id) sum1,
(select sum(f2) from tableB b where b.id = t.id) sum2,
sum1 + sum2 `sum3`,
t.*
from Table t;
Natürlich i die folgende Abfrage, aber das wird nicht notwendig die doppelte Laufzeit tun kann:
Select
(select sum(f1) from tableA a where a.id = t.id) sum1,
(select sum(f2) from tableB b where b.id = t.id) sum2,
(select sum(f1) from tableA a where a.id = t.id) +
(select sum(f2) from tableB b where b.id = t.id) `sum3`,
t.*
from Table t;
oder sogar die sum1 und sum2 res Einsetzen ults zu einer temporären Tabelle aber kann nicht imaging Ich übersehe etwas, um mysql eine effiziente Abfrage von summierten Feldern zu machen.
Gibt es eine bessere, effizientere Möglichkeit, summierte Felder wiederzuverwenden?