Mailinglisten-Archive |
Jörn Grube schrieb:
> Der "Dummy" vom Dienst ist mal wieder da :) Guten Tag erstmal.
>
> Ich habe zwei Tabellen, eine für Musikstile, eine für Interpreten. Auf
> der Seite, wo die Musikstile gelistet werden, sollen nun bei jeder
> Stilrichtung die Interpreten erscheinen, welche diesen Stil bevorzugen.
> Solange dies nur einer ist, ist das ja kein Thema:
>
> $sqlInterpreten = "SELECT
> dj_interpret_kname
> FROM
> dj_interpret
> WHERE
> dj_interpret_stil = '".$id."'
WHERE
dj_interpret_stil IN ('20,57,15')
LIMIT 0,xxx
oder:
WHERE
dj_interpret_stil IN ('SELECT ID FROM `verknuepfungstabelle` WHERE
dj_interpret_kname = 'Black Sabbath')
> ORDER BY dj_interpret_kname ASC";
>
> Nun hab ich für das Eintragen der Interpreten aber bei Stil ein
> multiples Select-Feld, es gibt ja Interpreten, die mehrere Sachen
> spielen (z.B. Black Sabbath mit Hard Rock, Heavy Metal, Doom Metal). In
> der Spalte der Interpreten-Tabelle werden die IDs der Stile dann
> beispielsweise so abgelegt:
>
> 20|57|15
>
> Wie muss ich denn nun die Abfrage schreiben, damit - um beim Beispiel zu
> bleiben - Black Sabbath bei allen drei Musikstilen erscheint?? Ich hatte
> an LIKE gedacht, aber irgendwie macht das auch nicht wirklich Sinn, oder?
> Schon Mal Dank im Voraus und einen schönen Tag noch Jörn Grube
http://dev.mysql.com/doc/refman/5.0/en/in-subquery-optimization.html
Gruss, Ronny
php::bar PHP Wiki - Listenarchive