Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde, peço ajuda dos membros desse fórum pois confesso estar completamente perdido.
Tomando como base o diagrama (em anexo), preciso de uma query que retorne as empresas, seus produtos e as categorias de cada produto, sendo que cada produto pode pertencer a uma ou mais categorias.
select
tbl_produtos.Empresa,
tbl_empresas.Nome,
tbl_catprod.Categoria,
tbl_classproduto.Classe,
tbl_produtos.Id,
tbl_produtos.Produto
from tbl_produtos
inner join tbl_empresas on tbl_produtos.Empresa = tbl_empresas.Id
left join tbl_catprod on tbl_produtos.Id = tbl_catprod.Categoria
left join tbl_classproduto on tbl_catprod.Categoria = tbl_classproduto.Id;
Tentei a consulta mostrada acima mas o resultado não foi o que eu esperava.
Agradeço antecipadamente pela ajuda.

Obrigado pela ajuda Motta, mas o resultado ainda não é o pretendido por mim.
Vou tentar explicar melhor: Cada empresa terá seus próprios produtos, cada um dos produtos poderá (ou não) pertencer a uma ou mais categorias (tbl_catprod), o resultado que busco é supondo o cliente A os seus produtos sejam listados e sua respectivas categorias, caso um produto pertença a mais de uma categoria ele apareça em cada uma delas.
Exemplo:
CLIENTE A | PRODUTO 01 | CATEGORIA A
CLIENTE A | PRODUTO 01 | CATEGORIA B
CLIENTE A | PRODUTO 02 | CATEGORIA C
CLIENTE A | PRODUTO 03 | CATEGORIA A
Deu pra entender agora? Confesso que não sei por onde começar, conto com sua ajuda.
O sql me parece certo mostre como os dados saem e como deveriam sair.
Boa noite, o resultado que obtenho esta no Screenshot_2.
Gostaria de chamar a atenção para o Screenshot_3, nele é possível notar que o produto 1 pertence a duas categorias e entretanto na saída da query ele aparece apenas uma vez.
Seria interessante que o produto se repetisse para cada categoria.

inner join tbl_empresas on tbl_produtos.Empresa = tbl_empresas.Id
left join tbl_catprod on tbl_produtos.Id = tbl_catprod.Id
>
Citar
o resultado não foi o que eu esperava
Você precisa explicar melhor , adivinhar não faz parte do jogo ... rs