Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Você pode ajudar a modificar a consulta ou outra consulta para obter o resultado esperado


De acordo com o esquema do seu banco de dados, se você deseja apenas o resultado esperado, tente seguir o 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 

SQLFiddle DEMO AQUI .