Aus dem verlinkten Beispiel:
INNER JOIN cat_nm t ON t.hier_cat_fremdschlüssel = c.id
cat_nm ist da die m:n tabelle, wenn du stattdessen event_types einsetzt hat sich doch das Problem "aus m:n mach 1:n" für dich gelöst, oder nicht?
aber erneut ...
das beispiel von ilja funktioniert aufgrund des limits innerhalb von IN ebenfalls nicht ...
Genau das war mein Aufhänger: "Funktioniert nicht" ist unkonkret, weil kann vieles bedeuten, u.a.
- deine MySQL version möchte es nicht
- du hast einen Syntaxfehler in der Schreibweise
- du bekommst einfach keinen oder falshce datensätze zurück
Die wenigsten der hier zu Hilfezwecken mitlesenden haben eine Glaskugel auf dem Tisch und können sehen was du siehst. Deshalb ist es einfach wichtig, keinerlei Details (genaue fehlermeldungen) unnötig zu abstrahieren (funktioniert nicht).
heisst dies ich kann es nur mit einer schleife und einem select mit limit 0,5 für jeden type lösen?
was ja funktioniert ich aber als extrem unschöne lösung sehe, oder?
Extrem finde ich das nicht wirklich. Es ist aber wohl aufgrund deiner Beschränkungen, was MySQL angeht nicht anders lösbar. Eine nicht ganz perfekte Lösung ist immer besser als gar keine Lösung. :)
Ich hoffe du verstehst jetzt etwas mehr. :)
Ciao, Frank