asmodin: Mehrere Bedingungen über mehrere Datensätze verteilt Gruppieren

Beitrag lesen

Hallo,

mir wurde bereits heute schon mal geholfen, bei einem anderen Problem mit einer Datenbank.

Jetzt habe ich noch eine Frage, ich hoffe das ist jetzt kein Doppelposting.

Ausgangslage: MySQL
Ich habe 3 Tabellen die ich per LEFT JOIN verbinde (also 2 Tabellen über eine Beziehungstabelle), soweit alles in Ordnung.

Ohne weitere Bedingung sieht das etwa so aus:

titel | filter
------+-------
abc1  | 10
abc1  | 20
abc2  | 10
abc2  | 20
abc2  | 30
abc3  | 10
abc3  | 40
abc4  | 20
abc4  | 50

Jetzt möchte ich alle Titel deren Filter ZUMINDEST (10 UND 20) ist. Sprich, das Ergebnis sollte so aussehen:

titel
-----
abc1
abc2

Probiert habe ich das so:
GROUP BY titel HAVING filter = 10 OR filter = 20

Gruppiert ist es richtig, allerdings sieht das so aus:

titel
-----
abc1
abc2
abc3
abc4

Nächster Versuch:
GROUP BY titel HAVING filter = 10 AND filter = 20

Da bekomme ich keine Ergebnisse mehr, was ich auch nachvollziehen kann.

Ein Titel kann übrigens einen oder mehrere Filter haben. Leider bin ich aus der MySQL-Doku nicht schlau geworden, der Abschnitt zu HAVING ist sehr kurz. Zudem bin ich mir nicht sicher, ob das überhaupt das Richtige für mich ist.

Gibts statt dem OR oder AND einen "ZUMINDEST" Operator oder ähnliches, bzw. wie kann ich mein Problem sonst lösen?