Gostaria de saber se há alguma forma de buscar somento os registros que estão duplicados. Algo como o inverso de DISTINCT
Obrigado

Buscar Registros Duplicados
Started By EternaL, 04/04/2008, 10:49
3 replies to this topic
#1
Posted 04/04/2008, 10:49
Magnum Web - Trazendo o melhor da web para você
Desenvolvimento de websites e sistemas web. Acesse http://www.magnumweb.com.br
Desenvolvimento de websites e sistemas web. Acesse http://www.magnumweb.com.br
#2
Posted 04/04/2008, 20:39
Exemplo, obtendo a lista de nomes que possuem duplicados:
Ou seja, a chave está na cláusula HAVING, pois já que você não pode usar uma função que usa os dados de agrupamentos no WHERE, há esta cláusula para você poder criar o filtro, para os tais dados que foram agrupados.
SELECT nome FROM tabela GROUP BY nome HAVING COUNT(*) > 1
Ou seja, a chave está na cláusula HAVING, pois já que você não pode usar uma função que usa os dados de agrupamentos no WHERE, há esta cláusula para você poder criar o filtro, para os tais dados que foram agrupados.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#3
Posted 08/04/2008, 15:56
Há alguma forma de fazer com que retornem todos? Porque nesse caso ele agrupa, e ai só retorna 1 dos registros duplicados, e eu precisava que retornasse todos
Magnum Web - Trazendo o melhor da web para você
Desenvolvimento de websites e sistemas web. Acesse http://www.magnumweb.com.br
Desenvolvimento de websites e sistemas web. Acesse http://www.magnumweb.com.br
#4
Posted 20/04/2008, 14:28
sim é possivel com uma sub-query!
tente assim:
tente assim:
SELECT nome FROM tabela WHERE nome IN ( SELECT nome FROM tabela GROUP BY nome HAVING COUNT(*) > 1 );
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)