Heim >Datenbank >MySQL-Tutorial >Wie finde ich Personen-IDs, die mit allen Stuff-IDs in MySQL verknüpft sind?

Wie finde ich Personen-IDs, die mit allen Stuff-IDs in MySQL verknüpft sind?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-29 10:27:13682Durchsuche

How to Find Person IDs Associated with All Stuff IDs in MySQL?

Überprüfen Sie, ob eine Spalte alle Werte einer anderen Spalte in MySQL enthält

Problem:

Angenommen, Sie haben zwei Tabellen, T1 und T2, mit Spalten, die Personen-IDs und Material-IDs darstellen. Wie können Sie feststellen, welche Personen-IDs mit allen Stuff-IDs in T2 verknüpft sind?

Lösung:

Um die Personen-IDs zu finden, in denen alle zugehörigen Stuff-IDs gefunden wurden T2, folgen Sie diesen Schritten:

  1. Verwenden Sie eine verschachtelte Abfrage, um die Personen-IDs aus T1 auszuwählen, die mit allen Material-IDs in übereinstimmen T2:
SELECT personID
FROM T1
WHERE stuffID IN (SELECT stuffID FROM t2)
  1. Gruppieren Sie die Ergebnisse nach Personen-ID und prüfen Sie, welche Einträge alle Material-IDs in T2 enthalten:
GROUP BY personID
HAVING COUNT(DISTINCT stuffID) = (SELECT COUNT(stuffID) FROM t2)
  1. Kombinieren Sie diese Abfragen, um das Endergebnis zu erhalten:
SELECT personID
FROM T1
WHERE stuffID IN (SELECT stuffID FROM t2)
GROUP BY personID
HAVING COUNT(DISTINCT stuffID) = (SELECT COUNT(stuffID) FROM t2)

Diese Abfrage gibt die Personen-IDs zurück, die alle haben Zugehörige Stuff-IDs, die in T2 angegeben sind. Im bereitgestellten Beispiel wäre das Ergebnis die Personen-ID 1.

Das obige ist der detaillierte Inhalt vonWie finde ich Personen-IDs, die mit allen Stuff-IDs in MySQL verknüpft sind?. 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