Einzelnen Beitrag anzeigen
Alt 28.06.2004, 09:25   #1
T.dot
Master
 
Registriert seit: 13.08.2003
Beiträge: 624


Standard [mysql] umgehen von verschachtelten Selects

Halli Hallo!

Wie ich gestern zu meinem Entsetzen feststellen musste, unterstützt MySQL keine verschachtelten Abfragen. Nachdem ich die aber bis jetzt in diversen Access Projekten verwendet habe und nicht wirklich weiß, wie ich diese nun umgehen soll, bräuchte ich eure Hilfe.

Ich geh in diesem Fall von zwei Tabellen aus, die eine ist eine Liste von Cocktails mit Namen, CocktailID, etc. und die zweite beherbergt die jeweiligen Zutaten für diese Cocktails. In dieser gibt es also eine CocktailID zur Verknüpfung und dann diverse ZutatenIDs. Nun möchte ich auslesen in welchen Cocktail zb die Zutat Rum und Orangensaft vorkommt. Das ganze würde ich so machen:

PHP-Code:
SELECT tblCocktails.C_IDtblCocktails.Cocktailname
FROM tblCocktails 
WHERE tblCocktails
.C_ID IN 
    
(SELECT tblCocktailZutaten.C_ID 
     FROM tblCocktailZutaten 
     WHERE tblCocktailZutaten
.Z_ID=60)
AND 
tblCocktails.C_ID IN 
    
(SELECT tblCocktailZutaten.C_ID 
     FROM tblCocktailZutaten 
     WHERE tblCocktailZutaten
.Z_ID=32
Funkt in Access, aber in MySQL natürlich nicht. Kann ich das ganze nun über irgendwelche Joins oder sonst irgendwie anders lösen ohne PHP basteln zu müssen (so habe ich es momemtan gelöst).

Herzlichsten Dank, Thomas
T.dot ist offline   Mit Zitat antworten