Mailinglisten-Archive |
Hallo, zu einigen Objekten gibt es Categorien und eine Kreuztabelle um die beiden zu verknüpfen, da ein Objekt in mehreren Categorien vorkommen kann (1/n). Nun möchte ich die Abfrage gerne optimieren. Derzeit frage ich die Objekte ab und mit einem extra Query pro Objekt die passenden Categorien dieses Objektes. z.B.: SELECT ob.oID, ob.titel, kr.name, ob.descr FROM objects AS ob LEFT JOIN autoren AS kr ON ob.kID = kr.kID WHERE ob.oID IN (17, 123, 236); und dann noch: SELECT ct.cID, ct.descr FROM categorie AS ct LEFT JOIN matrix AS ma ON ma.cID = ct.cID WHERE ma.oID = 17; SELECT ct.cID, ct.descr FROM categorie AS ct LEFT JOIN matrix AS ma ON ma.cID = ct.cID WHERE ma.oID = 123; SELECT ct.cID, ct.descr FROM categorie AS ct LEFT JOIN matrix AS ma ON ma.cID = ct.cID WHERE ma.oID = 236; Abschliessend durchwandere ich das Ergebnis und hänge an jeden Record, die gefundenen Categorien an. Geht das eventuell auch direkt in SQL ? mit bestem Gruß Carlo
php::bar PHP Wiki - Listenarchive