none
Exclusao de duplicidade em uma TABELA RRS feed

  • Pergunta

  • Pessoal bom dia,

    Tenho uma tabela no sql que estou com alguns registros em duplicidades, como faco para excluir pois sao colunas iguais,

    tipo :

    valeu pela ajuda.

    id_conta 
    id_conta_auxiliar codigo_tele mes_referencia  valor_total qtde_lancamentos tipo_conta dia_vencimento uf
    149000         NULL 455         jan/19 12324,44 0 1 19         AC
    149000         NULL 455         jan/19 12324,44 0 1 19         AC






















































    quarta-feira, 31 de março de 2021 15:08

Todas as Respostas

  • Boa tarde,

    Tente assim:

    with CTE_DUPLICIDADE as
    (
        select 
    		id_conta ,
             ROW_NUMBER() OVER(PARTITION BY id_conta ORDER BY id_conta DESC) as RN -- Função ROW_NUMBER CRIA UMA NUMERAÇÃO PARA CADA REC QUE SE REPETE 
    		     from  SuaTabela
    )
    
    DELETE from CTE_DUPLICIDADE 
    where RN > 1

    quarta-feira, 31 de março de 2021 16:40
  • Dr.Khan,

    Eu pensei em uma outra possibilidade, utilizar o comando Delete em conjunto com uma Subquery:

    Delete From SuaTabela
    Where Id_Conta In (Select Id_Conta From SuaTabela
    								Group By Id_Conta
    								Having Count(Id_Conta) >1)
    Go

    Enfatizo que o uso de CTE é uma ótima solução e prática, ainda mais dependendo do volume de dados, poderemos ter melhores resultados nas questões de performance.

    Seguindo nesta mesma linha de raciocínio, apresento um outro exemplo, que combina justamente o uso de CTE com o comando Delete e Subquery:

    ;With CTE_ItensRepetidos (CodigoRepetido)
    As
    (
    Select Id_Conta From SuaTabela
    Group By Id_Conta
    Having Count(Id_Conta) >1
    )
    
    Delete From SuaTabela
    Where Id_Conta In (Select CodigoRepetido From CTE_ItensRepetidos)
    Go
    Peço que analise, verifique as possibilidades.


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quarta-feira, 31 de março de 2021 17:22
  • top deu certo.
    segunda-feira, 17 de maio de 2021 23:36