Wapmaster Geschrieben 1. Dezember 2004 Geschrieben 1. Dezember 2004 Hallo zusammen, nun gehts in die zweite Runde Ich habe eine Produkttabelle, zu nicht allen Produkten befinden sich Bewertungen in einer zweiten Tabelle, es können natürlich auch mehrere pro Produkt sein. Mein Select soll für jedes Produkt alle Bewertungen lesen und den Durchschnitt errechnen, und Produkte mit dem besten Durchschnitt sollen natürlich zuerst zurückgegeben werden. Optimal wäre wenn ich den Durchschnitt zurückbekommen würde, eine bloße Sortierung nach Durchschnitt reicht aber auch. Der Wert der Bewertung ist als INT gespeichert, auf einer Skala von 1 - 10 Mit Mathe in SQL Abfragen hatte ich bisher noch nichts zu tun, ich hoffe ihr könnt mir da irgendwie weiterhelfen? :mod:
Pinhead Geschrieben 1. Dezember 2004 Geschrieben 1. Dezember 2004 Select Produktname , avg(bewertung) from Tabelle1, Tabelle2 where Tabelle1.id = tabelle2.id Group by tabelle1.id ungetestet
Honkytonk Geschrieben 3. Dezember 2004 Geschrieben 3. Dezember 2004 ungetestet Verstösst auch gegen die Aggregat-Funktion Ich würde es eher so machen (Syntax aus dem MSSQL-Server) SELECT prod.produktid , AVG(bew.bewertung) FROM produkttabelle AS prod LEFT OUTER JOIN bewertungstabelle AS bew ON prod.produktid = bew.produktid GROUP BY prod.productid
Honkytonk Geschrieben 3. Dezember 2004 Geschrieben 3. Dezember 2004 Ich vergaß: SELECT prod.produktid , AVG(bew.bewertung) FROM produkttabelle AS prod LEFT OUTER JOIN bewertungstabelle AS bew ON prod.produktid = bew.produktid GROUP BY prod.productid [COLOR=Red]ORDER BY AVG(bew.bewertung) DESC[/COLOR]
Pinhead Geschrieben 6. Dezember 2004 Geschrieben 6. Dezember 2004 Verstösst auch gegen die Aggregat-Funktion Was ist denn die Aggregat-Funktion ?
Wapmaster Geschrieben 7. Dezember 2004 Autor Geschrieben 7. Dezember 2004 @honkytonk: das funktioniert so leider nicht. Invalid user of group function sagt er. Hab mich ein bisschen umgeschaut, aber bin nicht wirklich schlau geworden. Hat jemand vielleicht anhand von irgendwelchen Links oder guten Buchtipps was zum lesen für mich?
BenjieAul Geschrieben 8. Dezember 2004 Geschrieben 8. Dezember 2004 Vielleicht hilft es hier einigen, wenn du sagst, welches Sql du benutzt, bzw welche DAtenbank, gibt ja genug davon. Bsp.: MySql oder MSSQL?
Wapmaster Geschrieben 8. Dezember 2004 Autor Geschrieben 8. Dezember 2004 achja mysql version 4.xx also ich nehme an was recht stabiles aber auch aktuell bin leider so auch noch nicht weitergekommen
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden