ugrás a tartalomhoz

SQL - 10 legtöbbször szerepelő érték - megoldva

DaWe35 · 2016. Szep. 7. (Sze), 14.12
Üdv!
A következő problémára keresek megoldást: adott ez az adatbázis
  1. id:   name:  
  2. 3     józsi  
  3. 1     sanyi  
  4. 1     sanyi  
  5. 3     józsi  
  6. 3     józsi  
  7. 3     józsi  
  8. 1     sanyi  
  9. 2     sanyi  
  10. 3     sanyi  
  11. 3     sanyi  
  12. 3     aladár  
Le szeretném kérdezni, hogy pl. 3-as id-nél mi a 10 leggyakrabban előforduló név (most csak 3 név van az adatbázisban, de nekem 10 kellene). Tehát az eredmény valami ilyesmi lenne:
  1. name:      hányszor szerepel 3-as id-vel az adatbázisban:  
  2. józsi      4  
  3. sanyi      2  
  4. aladár     1  
stb...

Milyen SQL kódot kell ehhez írnom? Előre is köszönöm a segítséget!
//DaWe
 
1

GROUP BY, DISTINCT és COUNT

Poetro · 2016. Szep. 7. (Sze), 14.58
GROUP BY, DISTINCT és COUNT
2

GROUP BY

janoszen · 2016. Szep. 7. (Sze), 14.59
A baratod itt a group by lesz, ami konkretan osszecsoportositja az azonos sorokat. MySQL eseten ez pl. igy nezne ki:
  1. SELECT  
  2.   COUNT(*) AS 'cnt',  
  3.   name  
  4. FROM  
  5.   people  
  6. GROUP BY  
  7.   name  
A count ez esetben csak a "csoporton" beluli elemeket szamolja. Termeszetesen erre utana rahuzhatsz egy ORDER BY-t is, ami rendezi a tablat a COUNT szerint.
3

Meglesz

DaWe35 · 2016. Szep. 7. (Sze), 15.57
Köszönöm!