Fórum Selecionar e excluir registros duplicados por data da última atualização? #588569
07/11/2017
0
Parece surreal, mas mais de 16 mil registros duplicados para cada valor e o erro ocorreu com cerca de uns 100 valores. O erro foi percebido após análise devido ao alto consumo de recursos do servidor, e foi observado que o erro existe desde 2014 devido às datas de inserções e de atualizações dos registros.
O que vai ser feito é excluir todos aqueles que são repetidos com data inferior a 01/11/2017 a fim de amenizar o consumo de recursos e será feita a correção do sistema.
Gostaria de saber como retornar e excluir registros repetidos, por exemplo se existir 100 registros com nomes iguais, excluir aqueles com data de última atualização inferior a 01/11/2017
Anderson
Curtir tópico
+ 0Posts
07/11/2017
Henrique Dias
mas para 16 mil registros vai demorar algumas horas, nao deve ser o jeito mais eficiente, porem pelo fato de eu ser iniciante e o que me vem na mente
Gostei + 0
07/11/2017
Anderson
select
delete
Gostei + 0
07/11/2017
Anderson
SQL
Gostei + 0
07/11/2017
Anderson
Vamos supor, todos os registros onde existam registros com mais de 100 repetições:
SELECT
nome, valor, dt_add, dt_update, COUNT(*)
FROM
configuracoes
GROUP BY
nome, valor
HAVING
COUNT(*) > 100
ORDER BY
dt_update DESCPara visualizar as datas de ultima atualização de determinado registro especifico:
SELECT
nome, valor, dt_add, dt_update
FROM
configuracoes
WHERE
nome = "habilitar-alertas"
ORDER BY
dt_update DESCDeletar com datas inferiores a determinada data:
DELETE FROM
configuracoes
WHERE
nome = "habilitar-alertas" and DATE(dt_update) < '2017-11-01';Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)