LEFT JOIN e MIN na segunda tabela

11/11/2013

0

SQL

Boa noite!

Depois de tanto quebrar a cabeça vim pedir ajuda aos amigos do forum.

Estou usando o banco de dados access e nele tenho duas tabelas:

Tabela_produtos
id
produto

tabela_fotos
id_foto
id_produto
foto

O problema é que na tabela fotos podem existir mais de uma foto para cada produto da mesma forma que este pode ficar vazio.
Então fiz a seguinte instrução SQL:

SELECT a.id, a.produto, b.foto
FROM tabela_produtos AS a LEFT JOIN tabela_fotos as b ON a.id = b.id_produto

A instrução junta as tabelas corretamente, o problema é que quando o produto tem mais de uma foto ele exibe todas, como por exemplo:
produto foto
1 24.jpg
2
3 25.jpg
4 25.jpg

Já usei a instrução:

SELECT a.id, a.produto, b.foto
FROM tabela_produtos AS a LEFT JOIN tabela_fotos as b ON a.id = b.id_produto
WHERE b.id_foto=(Select MIN(b.id_foto) FROM tabela_fotos as b)

Mas ai ele mostra somente uma foto no banco de dados.

alguem sabe como resolver o problema?

Desde já agradeço.







Marcelo Lopes

Marcelo Lopes

Responder

Posts

15/11/2013

Mariana Carvalho

qual o SGBD?
Responder

16/11/2013

Alex Lekao

Ola Bom dia!!!

Esperimente colocar um DISTINCT na lista de campos e verifica se resolve.

Espero ter ajudado.

Abraco.

Alex - Lekao
Responder

17/11/2013

Mariana Carvalho

Ola Bom dia!!!

Esperimente colocar um DISTINCT na lista de campos e verifica se resolve.

Espero ter ajudado.

Abraco.

Alex - Lekao


Alex, é SQL Server?
Responder

18/11/2013

Alex Lekao

Nao sei.
Responder

18/11/2013

Mariana Carvalho

mas esse T-SQL serve para qualquer SGBD?
Responder

18/11/2013

Deivison Melo

T-SQL é a extensão de SQL do MS SQL SERVER.
Responder

19/11/2013

Mariana Carvalho

desculpe, escrevi de forma erronea. isso seria a base do codigo sql de todos os bancos?
Responder

19/11/2013

Alex Lekao

o T-SQL se nao me engano eh Microsoft, como o Deivison postou acima, do SQL Server.

agora SQL eh a estrutura de todos os bancos.

se eh que posso dizer assim... rsrsr
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar