Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Tenho duas tabelas: projetos e imagens. Preciso pegar todos os projetos com o destaque = 1 e uma imagem de cada projeto.
Tentei o seguinte:
SELECT projetos.titulo, projetos.subtitulo_p, (SELECT imagens.imagem FROM imagens WHERE imagens.id_projeto = projetos.id_projeto LIMIT 1) FROM projetos WHERE projetos.destaque = 1 ORDER BY projetos.ordem ASC
Mas ele não está retornando uma imagem para cada projeto.
Olá Marcelo,
Tente usar group by, com ele, a primeira imagem existente na tabela imagem, vinculada ao projeto em questão será apresentada.
SELECT pro.titulo, pro.subtitulo_p, img.imagem
FROM projetos as pro
inner join imagens as img on img.id_projeto = pro.id_projeto
WHERE pro.destaque = 1
GROUP BY pro.id_projeto
ORDER BY pro.ordem ASC
Se não der certo, nos informe o que espera certinho, e qual os resultados já obtidos.
Abraços.
_ _
Fabiano Abreu
Papo SQL