Ich versuche, ein Rating-System zu schaffen, in dem der Benutzer Bilder/Videos/Audio usw. Ich habe zwei Tabellen im MomentRückkehr durchschnittliche Bewertung aus einer Datenbank (SQL)
Table: products
Cols: product_id[PK] | name | category | type | link
Diese Rate ist die Produkttabelle und enthält Informationen über die Produkte. Wenn Sie von Produkten verwirrt sind, denken Sie an das "Produkt" als Bild/Video/Audio, ich habe es so genannt, weil ich es einfacher verstehen kann. Die zweite Tabelle ist die Bewertungen
Table: product_ratings
Cols: rating_id[PK] | rating | product_id | timestamp
Diese Tabelle speichert Informationen über die Bewertung, die der Benutzer gegeben hat.
Ich möchte eine Seite, wo es die höchste Bewertung (im Durchschnitt) für alle "Produkte" angezeigt wird. Bisher habe ich durch SA sah, fand er den Folge Stück Code:
SELECT
p.product_id, p.name,
AVG(pr.rating) AS rating_average
FROM products p
INNER JOIN product_ratings pr
ON pr.product_id = p.product_id
WHERE p.product_id = 1
Das gibt nur die durchschnittliche Bewertung für einen bestimmten product_id, Wie würde ich mich über all die product_ids bekommen und ihre durchschnittliche Bewertung, und wie würde ich die höchste über PHP finden?
Ich habe versucht:
WHERE p.product_id < 1 AND p.product_id < 30
Aber das gibt nur product_id von 2, mit seinem Namen und AVERAGE_RATING ist, was ich nicht verstehe.
Guidance/Links zu Material sind willkommen
Warum geben Sie "where p.product_id = 1"? –
Dies war nur um zu zeigen, dass die angegebene SQL gibt die durchschnittliche Bewertung für die angegebene Produkt ID – Daniel