Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, amigos. Eu sei... o assunto é antigo, vão me dizer para buscar no fórum ou no Google, mas acreditem.. eu fiz e não achei anda satisfatório.
Encontrei exemplos com DISTINCT, mas que continuavam mostrando registros iguais e encontrei exemplos com GROUP BY, mas todos eles davam erro.
Meu select é:
SELECT id, anuncio, valor, plano FROM tabela order by anuncio
O problema é que tenho anuncios com o mesmo nome, mas quero mostrar apenas anuncios com nomes diferentes. Preciso dar select nos outros dados tbm para mostra-los na tela... usando dinstinct e group by quando há apenas um campo, funciona, mas quando baixo mais de um campo, não.
Alguém me ajuda?
Motta, não entendi a parte do tabela tabela2. Que tabela2 seria essa? Não entendi muito bem esse comando.
Eu fiz algo assim, mas não deu muito certo:
SELECT a.id, a.anuncio, a.valor, a.plano
FROM tabela a
WHERE a.id= (SELECT MAX(a.id) from tabela a, tabela b WHERE a.anuncio = b.anuncio) ORDER BY a.anuncio
Não deu erro, mas apareceu apenas uma palavra e não a listagem completa.
Ja tentou com o IN
Abçs
>
Ja tentou com o IN
Abçs
beleza, A.Jr? Se você se refere na parte do WHERE a.id e ao inves de usar =, usar IN, já sim, e o resultado é o mesmo. aparece apenas um anúncio.
Maior id de um anuncio qualquer
SELECT MAX(id) from tabela
WHERE tabela2.anuncio = 'xxx'
Listagem pediada
SELECT id, anuncio, valor, plano
FROM tabela
Juntando os dois e paara evitar comflito renomeando por alias o segundo select pois estamos lendo a mesma tabela.
SELECT id, anuncio, valor, plano
FROM tabela
WHERE id = (SELECT MAX(id) from tabela tabela2
WHERE tabela2.anuncio = tabela.anuncio)
order by anuncio
Motta, esse é o select mais doido que eu já vi! Tenho que estudar ele e entender depois direito! hehe Não entendi direito como a parte do MAX funciona. ACHO que você pega anuncios que são iguais em texto, e então, pega o maior id entre eles, correto?
Bom, de qualquer forma, funcionou!! Obrigado pela solução!
... pega o maior id entre eles, correto? ...
Exato, uma forma de
... mostrar apenas anuncios com nomes diferentes ...
.
Uma maneira.
SELECT id, anuncio, valor, plano
FROM tabela
order by anuncio