sql >> Database >  >> RDS >> Mysql

MySQL SUM-functie in meerdere joins

Dit is lastig vanwege de meerdere hiërarchieën. Ik stel voor:

SELECT c.id, ch.charge_amount, ch.taxes_amount
FROM Customer c LEFT JOIN
     (SELECT ch.customer_id, SUM(ch.amount) as charge_amount,
             SUM(t.taxes_amount) as taxes_amount
      FROM Charges ch LEFT JOIN
           (SELECT t.charge_id, SUM(t.amounts) as taxes_amount
            FROM taxes t
            GROUP BY t.charge_id
           ) t
           ON t.charge_id = ch.id
      GROUP BY ch.customer_id
     ) ch
     ON ch.customer_id = c.id;

U kunt dit niet oplossen zonder subquery's van een of ander formulier, als er meerdere kosten zijn voor een klant of meerdere belastingen op een toeslag.




  1. Ophalen/opslaan van alle gerelateerde acteurs in Freebase

  2. Verwijderen met behulp van CTE langzamer dan het gebruik van de tijdelijke tabel in Postgres

  3. Vreemd probleem met mysqli_stmt_bind_result

  4. Hoe gebruik je Enums in Scala Slick?