Hallo,
ich habe Subselects ausprobiert, komme aber nicht ganz klar. Folgende Version war mein letzter Vorschlag:
SELECT ID_word, letter, n
FROM (
SELECT ID_word, letter, n
FROM (
SELECT ID_word, letter, n
FROM word_letter
GROUP BY ID_word
HAVING SUM(n)=6
) AS wl_R
WHERE wl_R.letter = 'R' AND wl_R.n = 2
GROUP BY wl_R.ID_word
) AS wl_E
WHERE wl_E.letter = 'E' AND wl_E.n = '2'
Die Idee war die immer weitere Einschränkung der Ergebnisse. Die innere SELECT-Abfrage mit SUM funktioniert. Auch die zweite Schicht liefert als Ergebnis alle Wörter mit 6 Buchstaben, die zwei "R" enthalten. Doch die letzte Schicht liefert keine Ergebnisse mehr, obwohl z.B. "RETTER" ein mögliches Ergebnis wäre. Wie liefert die innere Abfrage der mittleren Abfrage, was diese der äußeren nicht mehr liefert?
Ich habe andere Möglichkeiten mit Subselects ausprobiert, die waren aber viel weniger performant, als es diese Möglichkeit zu sein scheint. Widerspruch nehme ich gerne entgegen.
Danke im Vorraus,
Thomas