sql >> Databáze >  >> RDS >> Mysql

Funkce MySQL SUM ve více spojeních

To je bolest kvůli mnoha hierarchiím. Navrhoval bych:

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;

Nebudete to moci opravit bez dílčích dotazů jednoho nebo druhého formuláře, pokud je zákazníkovi účtováno více poplatků nebo více daní z poplatku.




  1. Jak se připojit k databázi MySQL?

  2. Uložte formátovaný text do databáze a načtěte jej zpět „tak jak je“ jako formátovaný řetězec

  3. mysql auto_increment o 5?

  4. Zabalte prvky pole do prvků div na základě stejné hodnoty