sql >> Database teknologi >  >> RDS >> Mysql

Forespørg SUM for to felter i to forskellige tabeller

Du skal bruge en underforespørgsel til at aggregere gebyrtabellen før joinforbindelsen:

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 er, at de mange gebyrer på "gegeven" får joinforbindelsen til at producere uventede rækker, som påvirker summen.



  1. Udfør flere forespørgsler i en enkelt Oracle-kommando i C#

  2. Kører Galera Cluster på Kubernetes

  3. MySQL tæller på hinanden følgende datoer for den aktuelle streak

  4. NLS_LANG indstilling for JDBC tynd driver?