Heim >Datenbank >MySQL-Tutorial >Wie finde ich doppelte IDs mit unterschiedlichen Werten in einer anderen Spalte?

Wie finde ich doppelte IDs mit unterschiedlichen Werten in einer anderen Spalte?

Barbara Streisand
Barbara StreisandOriginal
2024-12-31 02:43:13287Durchsuche

How to Find Duplicate IDs with Different Values in Another Column?

Auswählen doppelter IDs mit unterschiedlichen Spaltenwerten

Sie haben eine Tabelle mit einer eindeutigen ID (ARIDNR) und einer weiteren Spalte (LIEFNR) mit unterschiedlichen Werte. Ziel ist es, alle Zeilen zu identifizieren, in denen ARIDNR mehr als einmal, aber mit unterschiedlichen LIEFNR-Werten vorkommt.

Um dies zu erreichen, berücksichtigen Sie die folgende Abfrage:

SELECT *
FROM Table
WHERE ARIDNR IN (
    SELECT ARIDNR
    FROM Table
    GROUP BY ARIDNR
    HAVING COUNT(DISTINCT LIEFNR) > 1
)

Aufschlüsselung:

  • Die äußere SELECT-Anweisung ruft alle Spalten aus der Tabelle ab.
  • Die innere Unterabfrage wählt eindeutige ARIDNR aus Werte.
  • Die GROUP BY-Klausel gruppiert die Ergebnisse nach ARIDNR.
  • Die HAVING-Klausel filtert die Ergebnisse, um ARIDNR-Werte mit mehr als einer eindeutigen LIEFNR einzuschließen.
  • Das äußere WHERE Die Klausel prüft, ob die ARIDNR jeder Zeile mit einem der in der Unterabfrage identifizierten ARIDNR-Werte übereinstimmt.

As Als Ergebnis sollte diese Abfrage die folgende Tabelle ausgeben:

+------+------+
| ARIDNR | LIEFNR |
+------+------+
| 1     | A     |
| 1     | B     |
| 2     | A     |
| 2     | B     |
+------+------+

Diese Tabelle enthält alle Zeilen, in denen ARIDNR dupliziert und mit unterschiedlichen LIEFNR-Werten verknüpft ist.

Das obige ist der detaillierte Inhalt vonWie finde ich doppelte IDs mit unterschiedlichen Werten in einer anderen Spalte?. 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