Mysql
 sql >> Datenbank >  >> RDS >> Mysql

SQL QUERY Mehrfachsuche in einer Zeile, um Daten aus einer anderen Zeile in derselben Tabelle zu finden

Das Problem heißt Relational Division .

SELECT  group_id
FROM    stuff
WHERE   member_id IN (11,22,33)
GROUP   BY group_id
HAVING  COUNT(*) = 3

wenn member_id ist nicht für jede group_id eindeutig , müssen Sie DISTINCT haben um nur eindeutige Werte zu zählen.

SELECT  group_id
FROM    stuff
WHERE   member_id IN (11,22,33)
GROUP   BY group_id
HAVING  COUNT(DISTINCT member_id) = 3

Weitere Varianten unter diesem Link: