Free cookie consent management tool by TermsFeed Policy Generator
  •  Video
  •    26 page views
  •   4588 video views
  • 2025, June 28, Saturday

#069 Como Remover registros duplicados no SQL Server

Nesse vídeo apresentamos como remover os registros duplicados da tabela no SQL Server.

Iremos conhecer as técnicas:

1\. Obter os registros distintos (SELECT, DISTINCT):

  • Use a cláusula SELECT DISTINCT para recuperar apenas os registros únicos de uma coluna ou conjunto de colunas.

Exemplo:

SELECT DISTINCT Column1, Column2 FROM TableName;

2\. Identificar registros duplicados no plano de execução (EXECUTION PLAN):

  • Analise o plano de execução para identificar operações que podem indicar a presença de registros duplicados.

3\. Identificar registros duplicados por agrupamento de colunas (GROUP BY, COUNT):

  • Utilize a cláusula GROUP BY para agrupar os registros por colunas específicas e COUNT para contar a ocorrência de cada grupo.

Exemplo:

SELECT Column1, Column2, COUNT(*)

FROM TableName

GROUP BY Column1, Column2

HAVING COUNT(*) > 1;

4\. Filtrar registros agrupados (HAVING, COUNT):

  • Utilize a cláusula HAVING para filtrar os resultados do agrupamento com base em condições específicas, como contar mais de uma ocorrência.

Exemplo:

SELECT Column1, COUNT(*)

FROM TableName

GROUP BY Column1

HAVING COUNT(*) > 1;

5\. Identificar individualmente os registros duplicados por função de janela (ROW\_NUMBER, OVER, PARTITION BY):

  • Utilize funções de janela, como ROW\_NUMBER() OVER (PARTITION BY ...), para atribuir números de linha a registros duplicados.

Exemplo:

SELECT Column1, Column2, ROW_NUMBER() OVER (PARTITION BY Column1, Column2 ORDER BY SomeColumn) AS RowNum

FROM TableName;

6\. Excluir os registros duplicados em tabela de expressão comum (CTE, WITH, SUBQUERY, DELETE):

  • Use uma CTE (Common Table Expression) para identificar registros duplicados e, em seguida, utilize uma instrução DELETE para removê-los.

Exemplo:

WITH Duplicates AS (

SELECT Column1, Column2, ROW_NUMBER() OVER (PARTITION BY Column1, Column2 ORDER BY SomeColumn) AS RowNum

FROM TableName

)

DELETE FROM Duplicates WHERE RowNum > 1;

Esses são passos comuns para lidar com registros duplicados em consultas SQL no Micr

osoft SQL Server. Escolha o método mais apropriado com base nos requisitos específicos do seu cenário.

This content contains
  • Content Video
  • Language Portuguese
  • Duration 5m 48s
  • Subtitles Sim

  • Reading time 1 min 30 seg

avatar
Fabio Santos

Data Scientist and Consultant for Digital and Analytics Solutions


  • Share

Youtube Channel

@fabioms

Subscribe now