Mysql
 sql >> Base de données >  >> RDS >> Mysql

Somme de groupe de deux tables en fonction de la date dans MySQL

Cela n'obtient pas de dates avec des zéros, pour cela vous aurez besoin d'une table de dates ou d'une procédure stockée pour parcourir les dates. Une façon de procéder consiste à effectuer une sous-sélection à partir d'une requête d'union (non testée) :

SELECT commission_date, SUM(click_commission), SUM(lead_commission), SUM(total_commission)
FROM (SELECT DATE(click.time) AS commission_date, click.commission AS click_commission,
             0 AS lead_commission, click.commission AS total_commission
      FROM click
      UNION ALL
      SELECT DATE(lead.time) AS commission_date, 0 AS click_commission,
             lead.commission AS lead_commission, lead.commission AS total_commission
      FROM lead) AS foo
GROUP BY commission_date
ORDER BY commission_date