login  Naam:   Wachtwoord: 
Registreer je!
 Forum

SELECT uit twee tabellen (Opgelost)

Offline NLZ - 26/07/2009 12:19
Avatar van NLZNieuw lid Ik zit met een probleempje.
Ik heb een tabel met filmpjes.
Deze bevat dus gewoon id, titel, ...

Maar dan is er ook een tabel voor ratings.
Deze ziet er zo uit: id, user_id, film_id, rating (van 0-5)

Maar nu is de bedoeling dat ik de 20 beste gewaardeerde filmpjes kan bekijken. Iemand een idee hoe ik dat oplos.
Dus eigenlijk een select uit de rating tabel, de ratings optellen en delen door het aantal, en daarvan de film returnen.

2 antwoorden

Gesponsorde links
Offline Martijn - 26/07/2009 12:29 (laatste wijziging 26/07/2009 12:33)
Avatar van Martijn Crew PHP Als elke film meerdere ratings heeft:
Dan moet je met group by werken om je eerste query te maken, de film_id's te selecteren, en dan moet je die in $array zetten.

Anders doe je iets met ORDER BY rating DESC LIMIT 20
en die zet je dan in een $array

en dan doe je
  1. SELECT id FROM films WHERE id IN (".implode(",",$array)." LIMIT 20
Offline NLZ - 27/07/2009 17:20
Avatar van NLZ Nieuw lid het is gelukt met deze query:

  1. SELECT (SUM(rating) / count(rating)) AS som, filmpje_id FROM filmpjes_rating GROUP BY filmpje_id
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.198s