sql >> Databasteknik >  >> RDS >> Mysql

Fråga SUM för två fält i två olika tabeller

Du måste använda en underfråga för att sammanställa avgiftstabellen innan anslutningen:

SELECT sum(prijs) as SumOfPrijs, sum(amount) as SumOfFees, sum(prijs)+sum(amount) AS   
Total, year(vertrekdatum) as year
FROM tbl_vluchtgegevens vg LEFT JOIN
     (select f.gegevenId, sum(amount) as Amount
      from tbl_fees f
      group by f.gegevenId
     ) f
     ON f.gegevenID = vg.gegevenID
WHERE vertrekdatum <=NOW()
GROUP by year(vertrekdatum);

Problemet är att de multipla avgifterna på "gegeven" gör att kopplingen producerar oväntade rader, som påverkar summan.



  1. Hantera komplexa WHERE-satser med en PHP Query Builder

  2. Hur ställer man in miljövariabeln PYTHON_EGG_CACHE på Mac?

  3. Hur fungerar det att hämta data från SQL Server till SqlDataReader?

  4. Skapa ny tabell i befintlig DB i separat SQLiteOpenHelper-klass