Mailinglisten-Archive |
Moin, >> ich bins mal wieder. Folgendes neue Problem ist > aufgetreten, nachdem die JOIN-Sache von der letzten Woche > optimal klappt (Danke nochemal, Sebastian und Peter!): In > einer Tabelle habe ich Rezensionen gespeichert. Nun > versuche ich, die längsten Rezensionen, gruppiert nach > den Rezensenten, zu bekommen. Der Query "SELECT buchnr, > titel, vorname, autor, vorschlag, MAX (LENGTH (CONCAT ( > beschreibung, fazit ) ) ) AS laenge FROM buecher GROUP > BY vorschlag;" liefert schon die richtige Länge zu den > richtigen Rezensenten, aber die falschen restlichen > Felder. Wie muss ich den Query umschreiben, damit auch > der richtige Wert für buchnr, titel, vorname und autor > gefunden wird, der dem Feld entsprechen soll, welches die > Länge für den MAX-Befehl liefert? > > Vielleicht könntest du dich mal dazu druchringen nicht solche > 'Textklotze' hier hin zu hauen, sondern mal etwas > Formatierung walten zu lassen, dann liese sich das > auch besser lesen und es> würde vielleicht > mehr Antworten geben. > > Außerdem fehlen Informationen über den Aufbau deiner Tabellen. Beides Mal: Du hast Recht, tut mir leid. Aaaaaaber.... > ... mit einem LEFT JOIN könnte man dir bestimmt helfen > > > SELECT `copy`.*, > MAX(`org`.`val`) AS `maxval` > FROM `org` > LEFT JOIN `org` AS `copy` > ON `org`.`[pk]` = `copy`.`[pk]` > GROUP BY `org`.`[pk]` > HAVING `copy`.`val` = `maxval` > > ... oder so ähnlich ... ...der JOIN mit sich selbst ist genial! Danke! mfg Nico -- www.buchtips.net - Rezensionen online
php::bar PHP Wiki - Listenarchive