Deletando registro duplicado com 4 campos iguais - Firebid
06/02/2015
0
Olá Pessoal!
Uso Banco Firebird 2.5 e estou precisando excluir registros duplicados na tabela MOV_MOVIMENTOS que estejam na seguinte condição:
excluir registros com os campos duplicados (SOCIO_COD, LANC_COD, MODO_RECEB_COD, MES) e que tenham a data mais recente.
Obs: tenho na tabela o campo ID pra identificar os registros e o campo DATA_REG para identificar a data do registro.
Agradeço quem puder me da uma ajuda!
Obrigado.
Uso Banco Firebird 2.5 e estou precisando excluir registros duplicados na tabela MOV_MOVIMENTOS que estejam na seguinte condição:
excluir registros com os campos duplicados (SOCIO_COD, LANC_COD, MODO_RECEB_COD, MES) e que tenham a data mais recente.
Obs: tenho na tabela o campo ID pra identificar os registros e o campo DATA_REG para identificar a data do registro.
Agradeço quem puder me da uma ajuda!
Obrigado.
Marcos Roberto
Curtir tópico
+ 0
Responder
Post mais votado
07/02/2015
Vamos lá.. Primeiro vocÊ selecione os registros duplicados e depois manda o ID deles para o DELETE. Se você usa o gerador de sequence do próprio banco (ID), então você pode usar o próprio ID para identificar quem é o mais recente e deletar, não precisa da data.
DELETE FROM MOV_MOVIMENTOS where ID in( SELECT max(id) FROM MOV_MOVIMENTOS mm GROUP BY mm.socic_cod, mm.lanc_cod, mm.modo_receb_cod, mm.mes HAVING count(*) > 1)
Ronaldo Lanhellas
Responder
Mais Posts
07/02/2015
Ronaldo Lanhellas
Vamos lá.. Primeiro vocÊ selecione os registros duplicados e depois manda o ID deles para o DELETE. Se você usa o gerador de sequence do próprio banco (ID), então você pode usar o próprio ID para identificar quem é o mais recente e deletar, não precisa da data.
DELETE FROM MOV_MOVIMENTOS where ID in( SELECT max(id) FROM MOV_MOVIMENTOS mm GROUP BY mm.socic_cod, mm.lanc_cod, mm.modo_receb_cod, mm.mes HAVING count(*) > 1)
Responder
23/04/2015
Marcos Roberto
Olá Ronaldo!
pow cara eu não recebi a notificação que vc respondeu o post, só vi agora...
Eu testei aqui e deu certo , puts quebrou maior galho muito obrigado!!
pow cara eu não recebi a notificação que vc respondeu o post, só vi agora...
Eu testei aqui e deu certo , puts quebrou maior galho muito obrigado!!
Responder
Clique aqui para fazer login e interagir na Comunidade :)