Maison > base de données > tutoriel mysql > Comment rechercher et récupérer les ID des lignes en double dans SQL Server ?

Comment rechercher et récupérer les ID des lignes en double dans SQL Server ?

DDD
Libérer: 2024-12-28 20:37:10
original
311 Les gens l'ont consulté

How to Find and Retrieve IDs of Duplicate Rows in SQL Server?

Recherche de lignes en double dans SQL Server avec des identifiants associés

Lorsque vous traitez de grands ensembles de données, il n'est pas rare de rencontrer des lignes en double. Dans SQL Server, l'identification et la suppression de ces doublons sont cruciales pour garantir l'intégrité des données et minimiser l'espace de stockage. Cet article fournira un guide complet sur la façon de rechercher les lignes en double et de récupérer les identifiants associés dans une base de données SQL Server.

Identification des lignes en double

La première étape consiste à identifier les lignes en double. Ceci peut être réalisé en regroupant les lignes en fonction d'une ou plusieurs colonnes spécifiques, puis en comptant les occurrences de chaque groupe. Les lignes dont le nombre est supérieur à 1 sont considérées comme des doublons.

Requête originale

SELECT orgName, COUNT(*) AS dupes
FROM organizations
GROUP BY orgName
HAVING COUNT(*) > 1;
Copier après la connexion

Cette requête produit le résultat suivant :

| orgName | dupes |
|-------------------|-------|
| ABC Corp | 7     |
| Foo Federation | 5     |
| Widget Company | 2     |
Copier après la connexion

Récupération des identifiants associés

Pour récupérer les identifiants associés, la clause de jointure interne peut être utilisé pour fusionner deux tables basées sur une colonne commune. Dans ce cas, nous pouvons joindre la table des organisations avec une sous-requête qui calcule le nombre de doublons.

Requête modifiée

select o.orgName, oc.dupeCount, o.id
from organizations o
inner join (
    SELECT orgName, COUNT(*) AS dupeCount
    FROM organizations
    GROUP BY orgName
    HAVING COUNT(*) > 1
) oc on o.orgName = oc.orgName;
Copier après la connexion

Cette requête modifiée produit le résultat suivant :

| orgName | dupeCount | id |
|-------------------|-------|---|
| ABC Corp | 1 | 34 |
| ABC Corp | 2 | 5 |
| ... | ... | ... |
| Widget Company | 1 | 10 |
| Widget Company | 2 | 2 |
Copier après la connexion

Ce résultat fournit à la fois le nombre de doublons et les identifiants associés pour chaque organisation en double. Ces informations peuvent être utilisées pour fusionner manuellement les enregistrements d'utilisateurs en double ou pour d'autres tâches de gestion des données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal