Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Consulta SOMA para dois campos em duas tabelas diferentes


Você precisa usar uma subconsulta para agregar a tabela de taxas antes da junção:
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);

O problema é que as várias taxas em "gegeven" estão fazendo com que a junção produza linhas inesperadas, que afetam a soma.