Rouven: MySQL Abfrage!

Beitrag lesen

Hi Vinzenz,

Self-Joins, jaja, das ist so eine Sache. Ich glaub ich komme vor dem Wochenende nicht zum Weiterschreiben, schlage aber folgendes vor:
Ich vereinheitliche meinen Artikel noch, also bei der Normalisierungsmotivation nehme ich das selbe Beispiel wie unten.
Am Ende bzw. an der Stelle JOIN-Grundlagen verweise ich dann auf deinen weiterführenden Artikel, bzw. mehrere falls man sich entscheidet SelfJOIN doch mehr in irgend was weiteres einzusortieren.
Mein Artikel bildet dann gewissermaßen ein kleines Grundlagenwert, man kann ab dort dann weiterlesen und das Thema vertiefen.
-----------
Zum Problem:
Self-Join ist relativ starr, finde ich persönlich, ich würde es über ein GROUP BY versuchen:
SELECT ID, PersonFID, Gruppe
FROM tabelle
WHERE ((typ = 'ST') AND (wert = 'Ger'))
   OR ((typ = 'IT') AND (wert = 'Ait'))
GROUP BY ID, PersonFID, Gruppe
HAVING COUNT(*) = 2

Das Select bringt - sofern die Person zur Treffermenge gehört - zwei Datensätze, durch die Gruppierung werden sie vereint und ein Zählen ergibt "waren zwei".
Möchte man nun einen haben, der 3 Kombinationen erfüllt, braucht man einfach nur einen OR-Block anzufügen und das COUNT auf 3 zu setzen.

MfG
Rouven

--
-------------------
ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(