Heim >Datenbank >MySQL-Tutorial >Wie finde und rufe ich doppelte Zeilen und ihre IDs in SQL Server ab?

Wie finde und rufe ich doppelte Zeilen und ihre IDs in SQL Server ab?

Barbara Streisand
Barbara StreisandOriginal
2024-12-27 08:34:14599Durchsuche

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

Abrufen doppelter Zeilen und zugeordneter IDs in SQL Server

Das Entfernen doppelter Zeilen aus einer Datenbank ist für die Datenintegrität und -effizienz von entscheidender Bedeutung. In diesem Szenario wollen wir alle doppelten Zeilen aus einer Organisationstabelle identifizieren und abrufen, zusammen mit ihren entsprechenden IDs und der Anzahl der doppelten Zeilen.

Um dies zu erreichen, können wir die leistungsstarken Funktionen von SQL Server nutzen. Die bereitgestellte Anweisung identifiziert effektiv doppelte Zeilen und stellt eine Anzahl von Duplikaten bereit:

SELECT orgName, COUNT(*) AS dupes
FROM organizations
GROUP BY orgName
HAVING COUNT(*) > 1

Um diese Abfrage zu verbessern, können wir eine Unterabfrage einführen, die eine Tabelle mit eindeutigen Organisationsnamen und entsprechenden Duplikatzahlen generiert:

SELECT orgName, COUNT(*) AS dupeCount
FROM organizations
GROUP BY orgName
HAVING COUNT(*) > 1

Diese Unterabfrage wird dann mithilfe der Spalte „orgName“ mit der Hauptorganisationstabelle verknüpft, sodass wir die mit jedem Duplikat verknüpften IDs abrufen können Zeile:

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

Diese verfeinerte Abfrage bietet jetzt eine umfassende Liste doppelter Organisationszeilen, deren zugehörige IDs und die Anzahl der Duplikate. Mit diesen Informationen können Sie doppelte Zeilen manuell sicher zusammenführen und so die Datenintegrität gewährleisten und gleichzeitig die Beziehungen zu anderen Tabellen in Ihrer Datenbank aufrechterhalten.

Das obige ist der detaillierte Inhalt vonWie finde und rufe ich doppelte Zeilen und ihre IDs in SQL Server ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn