mrbebert | En faisant ta requête pour cette année et un LEFT JOIN sur la même requête et en réunissant les lignes décalées d'une année
Quelque chose dans ce genre :
Code :
- SELECT DATE_FORMAT(billing_date, '%d/%m/%Y') AS JOUR
- , SUM(IF(price>0, 1, 0)) AS PAYANT
- , SUM(IF(price=0, 1, 0)) AS GRATUIT
- , IFNULL(PAYANT_old, 0)) AS PAYANT_old
- , IFNULL(GRATUIT_old, 0)) AS GRATUIT_old
- FROM rfo_billing
- LEFT JOIN (
- SELECT billing_date AS billing_date_old
- , SUM(IF(price>0, 1, 0)) AS PAYANT_old
- , SUM(IF(price=0, 1, 0)) AS GRATUIT_old
- GROUP BY billing_date
- ) tb_previous_year ON tb_previous_year.billing_date=(rfo_billing.billing_date - INTERVAL 1 YEAR)
- WHERE (billing_date < current_date() + INTERVAL 1 DAY)
- AND (billing_date >= current_date() - INTERVAL 11 DAY)
- GROUP BY billing_date;
|
Message édité par mrbebert le 20-02-2012 à 09:41:45 ---------------
Doucement le matin, pas trop vite le soir.
|