Mailinglisten-Archive |
Jonathan Deutekom wrote: > Hallo, > > Ich stehe gerade auf dem Schlauch und komm nicht runter. Oje ... > > Folgendes Problem: Ich habe eine Tabelle > > ID_Produkt ID_Kategorie > 2 5 > 2 9 > > > Jetzt möchte mit einer SQL-Abfrage alle Produkte haben, in dem das Produkt sowohl in Kategorie 2 als auch in Kategorie 9 vorhanden ist. Also als Ergebnis hier die 2 haben (in einer Zeile). > > Wie stell ich das an? entweder du 'JOINst' die Kategorie Tabelle zweimal, oder du machst ein wenig mit HAVING, GROUP BY und COUNT() rum ... mit JOIN: SELECT * FROM `table` LEFT JOIN `table` AS `kopie` USING (`ID_Produkt`) WERE `table`.`ID_Kategorie` = 2 AND `kopie`.`ID_Kategorie` = 9 oder: SELECT COUNT(*) AS `anzahl`, * FROM `table` WHERE `ID_Kategorie` IN (2,9) GROUP BY `ID_Produkt` HAVING `anzahl` >= 2 ... o.ä. -- Sebastian Mendel (www.sebastianmendel.de) *www.warzonez.de* | www.tekkno4u.de | www.nofetish.com
php::bar PHP Wiki - Listenarchive