Fórum Deletar se tiver menos que 10 registros repetidos. #289095
21/07/2005
0
Tenho a seguinte situação:
Uma tabela com cerca de 400 mil registros, nesta tabela tem um campo TIPO.
Preciso deletar todos os registros desta tabela , se o campo TIPO, tiver menos que 10 registros repetidos.
Exemplo:
Tenho 100 registros com o conteudo A.
Beleza então estes não são deletados.
Mas se eu tiver 9 registros com o conteudo B.
Estes sim são deletados.
Mas só pra lembrar...
Tem muitos tipos diferentes, gostaria de fazer isso tudo em um select só, não colocando count em um por um e deletar...
Tentei com o having, mas ficou muito lento...
e no final não ficou no resultado esperado.
Obrigado e desculpas pela repetição.
Lynx
Curtir tópico
+ 0Posts
21/07/2005
Lynx
select TIPO from TABELA group by TIPO
having Count(TIPO) < 10
e volta os registros que tem menos que 10 tipos repetitivos (Creio eu que está certo)
Mas para deletar tentei
Delete From Tabela where TIPO in (select TIPO from TABELA group by TIPO
having Count(TIPO) < 10)
Mas não deu certo...
Gostei + 0
21/07/2005
Lynx
Delete From Tabela where TIPO in (select TIPO from TABELA
group by TIPO
having Count(TIPO) > 2000)
creio eu que está certo agora
Gostei + 0
21/07/2005
Lynx
Ficou assim:
[color=red:907de6a0ff]Delete From Tabela where TIPO in (select TIPO from TABELA
group by TIPO
having Count(TIPO) < 2000)
[/color:907de6a0ff]
Gostei + 0
22/07/2005
Motta
Gostei + 0
22/07/2005
Lynx
Só preciso deletar os repetidos aos poucos...
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)