Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Usando count

Pessoal, ja consigo resolver esse problema em parte. Tenho 2 tabelas uma: [usuarios] e outra [fiscalizações]

usuarios:
idusuario - nomeusuario
_________
fiscalizacoes:
idfisc - executorfisc [id do usuario]

Quero saber quantas fiscalizações cada usuário fez e por em ordem por quantidade. Estou fazendo dessa maneira:

select nome,count(idfisc) as quantidade from usuario,fiscalizacoes where 
executorfisc=idusuario group by executorfisc order by quantidade

Porem dessa maneira ele só mostra quem tem pelo menos 1 registro na tabela de fiscalizacao!

Preciso que ele mostre todos os nomes da tabela usuario e caso ele nao tenha nenhum registro na tabela fisc apareça zerado... não tenho ideia de como fazer, alguem tem algum direcionamento ?

1 resposta
solução

Pelo que eu entendi da estrutura das suas tabelas, você precisaria fazer um LEFT JOIN. Segue um exemplo:

select nomeusuario,count(idfisc) as quantidade from usuario LEFT JOIN fiscalizacoes on idusuario = executorfisc
group by nomeusuario order by count(idfisc)