Mysql
 sql >> Database >  >> RDS >> Mysql

Puoi aiutare a modificare la query o un'altra query per ottenere il risultato atteso

Secondo lo schema del tuo database, se vuoi solo il risultato atteso, prova a seguire sql;)

select 
    case source_id when 1 then 'online' when 2 then 'visit' when 3 then 'phone' end as `Type`,
    sum(if(month(date_created) = 5, total_price, 0)) as `May`,
    sum(if(month(date_created) = 6, total_price, 0)) as `June`
from `orders`
where date_created between (curdate() - interval 1 month) and curdate()
group by source_id 

DEMO SQLFiddle QUI .