mysql - show all rows from left join -


i have query

select if(viaturas.transportador null,        'sem transportador', viaturas.transportador) transportador,        sum(ifnull(retorno_euro,0))- sum(ifnull(devolucao_euro,0)) total_euro,        sum(ifnull(retorno_ddf,0))- sum(ifnull(devolucao_ddf,0)) total_ddf,        sum(ifnull(retorno_vadias_plast,0))- sum(ifnull(devolucao_vadias_plast,0)) total_plast transportes.transportation_order     left join transportes.viaturas on viaturas.viatura=transportation_order.viatura estado not in ('cancelado', 'eliminado')   , servico in ('distribuição', 'devolução', 're-entrega')   , data >= '2016-08-08' group lower(transportador); 

but shows result matched rows. how can show "tranportador" rows when there no match between tables?

when left join, put right side table conditions in on clause true left join behavior. (when in where clause, you'll regular inner join result.)

select if(viaturas.transportador null,        'sem transportador', viaturas.transportador) transportador,        sum(ifnull(retorno_euro,0))- sum(ifnull(devolucao_euro,0)) total_euro,        sum(ifnull(retorno_ddf,0))- sum(ifnull(devolucao_ddf,0)) total_ddf,        sum(ifnull(retorno_vadias_plast,0))- sum(ifnull(devolucao_vadias_plast,0)) total_plast transportes.transportation_order     left join transportes.viaturas on viaturas.viatura=transportation_order.viatura   , estado not in ('cancelado', 'eliminado')   , servico in ('distribuição', 'devolução', 're-entrega')   , data >= '2016-08-08' group lower(transportador); 

Comments

Popular posts from this blog

PHP while loop dynamic rowspan -

timer - Java TimerTask cancel -

android - How to read a column value in parse.com without accessing an object or a pointer -