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
id:   name:
3     józsi
1     sanyi
1     sanyi
3     józsi
3     józsi
3     józsi
1     sanyi
2     sanyi
3     sanyi
3     sanyi
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:
name:      hányszor szerepel 3-as id-vel az adatbázisban:
józsi      4
sanyi      2
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:

SELECT
  COUNT(*) AS 'cnt',
  name
FROM
  people
GROUP BY
  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!