Musisz użyć podzapytania, aby zagregować tabelę opłat przed dołączeniem:
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);
Problem polega na tym, że wielokrotne opłaty na „gegeven” powodują, że połączenie generuje nieoczekiwane wiersze, które wpływają na sumę.