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

Count() e problema de junção esquerda


Você precisa COMPRAR do lado ESQUERDO, pois o lado direito é aquele que pode não ter dados, neste caso PRODUTO.

Além disso, você precisa da condição WHERE como uma condição LEFT-JOIN ON, para que ela se junte aos produtos na condição de status e apenas desconte o produto (mantendo a loja) mesmo que o status não seja desejado.
select s.name
       , p.name
       , count(p.id) 
from   Shop as s
       left join Product as p on p.shop=s.id AND p.status <> '8796107276379'
group by 
       s.id, p.name