Ir para conteúdo

POWERED BY:

Arquivado

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

marcelo2605

Relacionando duas tabelas

Recommended Posts

Tenho as seguintes tabelas:

 

Livros (id_livro, titulo, autor)

 

Livrarias (id_livraria, id_livro, livraria, link)

 

Para cada entrada na tabela livros, existem uma série de entradas na tabela livrarias correspondendo aos sistes que vendem determinado livro.

 

Todos os livros são exibidos na mesma página:

 

SELECT * FROM livros ORDER BY id_livro DESC

 

Eu gostaria de exibir também, para cada livro, a relação de livrarias que o vendem. Tentei com INNER JOIN, mas não deu certo:

 

SELECT livros.*, livrarias.id_livraria, livrarias.id_livro, livrarias.livraria, livrarias.link 
FROM livros INNER JOIN livrarias ON livrarias.id_livro = livros.id_livro
ORDER BY livros.id_livro DESC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem que agrupar os dados por livros;

SELECT lo.*, las.*

FROM livro lo

INNER JOIN livrarias las

ON ( lo.id_livro = las.id_livro)

GROUP BY lo.id_livro;


 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Berzek, o problema é que dessa forma os livros que não possuem link para as livrarias não aparecem na pesquisa.

 

Tente isso:

 

SELECT * FROM Livros
LEFT JOIN Livrarias ON (Livros.id_livro = Livraria.id_livro)
GROUP BY Livros.id_livro

 

:lol:

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.