[PHP/MySQL] Maken van Top 10 uit een tabel

Pagina: 1
Acties:

  • rvrbtcpt
  • Registratie: November 2000
  • Laatst online: 08:44
Hoi,

Op dit moment zit ik met het volgende: ik probeer een query te maken die een top 10 samenstel van meest voorkomende records in een tabel.
Er is een kolom met een ID dat dus een of meerdere keren voorkomt in die tabel en hierop wil ik dus die query loslaten.
Het is de bedoeling dat het ID dat het meeste voorkomt op nr 1 komt te staan enz.

Wie heeft er een voorbeeld van dit soort queries ?

Alvast bedankt.

  • tomato
  • Registratie: November 1999
  • Niet online
Kijk eens in de MySQL manual bij dingen als 'group by', 'count()' en 'order by'.

Verder klinkt het mij niet echt best in de oren als je een veld ID hebt dat niet unique is, maar goed, je zult er vast je redenen voor hebben.

  • rvrbtcpt
  • Registratie: November 2000
  • Laatst online: 08:44
Dat ID is uniek in een andere tabel maar hoeft dat niet in de tabel te zijn waar ik die top 10 uit haal.
En bedankt voor je tips, precies die SQL statements die ik nodig had en het lijkt erop dat het deze is:

SELECT <field1>,COUNT(*)as no FROM
<table> GROUP BY <field1> ORDER BY no DESC

Bedankt.

Verwijderd

SELECT COUNT(ID) FROM TABEL GROUP BY ID

  • rvrbtcpt
  • Registratie: November 2000
  • Laatst online: 08:44
Damn, nog even iets vergeten.

Het gaat dus om een tabel met produkten en die verkocht zijn. Ik moet echter ook nog rekening houden met de hoeveelheid die er steeds verkocht wordt.

Iemand een idee ?

Heb het al. COUNT vergeten en SUM gebruiken en GROUP BY:

SELECT productid, SUM(productquantity) as topproduct
FROM orderlines GROUP BY productid ORDER BY topproduct DESC