Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

matheusmarson

Consulta para contar registros do usuário em 2 tabelas

Recommended Posts

Senhores

 

Tenho a seguinte situação:

 

Tenho uma tabela usuario (id, nome, documento, cidade)

Cada usuário poderá cadastrar serviços e produtos

Por isso tenho as tabelas servicos (id, nome_servico, ramo, descricao, id_usuario) e produtos (id, titulo, categoria, foto, id_usuario)

 

Necessito mostrar a relação de usuário com a quantidade de serviços e produtos que ele tem cadastrado

 

Para uma quantidade eu consegui. Já para as duas não.

Fiz a seguinte query:

SELECT u.id, u.nome, cidade, documento, COUNT(p.id_usuario) as produtos
FROM usuarios u
LEFT JOIN produtos p
ON p.id_usuario=u.id
GROUP BY u.id

 

Como resolvo isso? Alguém tem alguma idéia?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Senhores

 

Tenho a seguinte situação:

 

Tenho uma tabela usuario (id, nome, documento, cidade)

Cada usuário poderá cadastrar serviços e produtos

Por isso tenho as tabelas servicos (id, nome_servico, ramo, descricao, id_usuario) e produtos (id, titulo, categoria, foto, id_usuario)

 

Necessito mostrar a relação de usuário com a quantidade de serviços e produtos que ele tem cadastrado

 

Para uma quantidade eu consegui. Já para as duas não.

Fiz a seguinte query:

SELECT u.id, u.nome, cidade, documento, COUNT(p.id_usuario) as produtos
FROM usuarios u
LEFT JOIN produtos p
ON p.id_usuario=u.id
GROUP BY u.id

 

Como resolvo isso? Alguém tem alguma idéia?

 

Olá testa da seguinte maneira :thumbsup:

 

 

select usu.id

,usu.nome

,usu.cidade

,usu.documento

,count(pro.id_usuario)as qtd_produtos

 

from usuarios usu inner join produtos pro on usu.id = pro.id_usuario

inner join servicos as ser on pro.id_usuario = ser.id_usuario

 

group by usu.id

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde amigo,

 

Precisa mostrar cada um em uma coluna?

 

Se for o caso tente:

 

SELECT u.id, u.nome, u.cidade, u.documento, 
(SELECT COUNT(p.id_usuario) FROM produtos p WHERE p.id_usuario = u.id) AS qtdProdutos, 
(SELECT COUNT(s.id_usuario) FROM servicos s WHERE s.id_usuario = u.id) AS qtdServicos 
FROM usuarios u

Fico a disposição, abraço.

 

EDIT: Mudei a query, a primeira que postei tava errada. Viajei :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.