PHP & MySQL: Order och Group by?

Databaser & SQL

2 svar · 399 visningar · startad av mikaeled

Medlem sedan dec. 2000157 inlägg
Trådstart#1

Hej,

Jag har en databas som ser ut ungefär såhär

ID, Namn, Familj
1, Mikael, Andersson
2, Jonas, Nilsson
3, Sofia, Andersson

Nu vill jag sortera familjevis så att output blir:

1 - Andersson (2)
2 - Nilsson (1)

Det vill säga placering efter antal rader med samma efternamn. (2) betyder då att det finns två rader med Andersson som efternamn.. Detta måste ju gå göra smidigare än att först en select med group by familj och sedan räkna antal rader för varje? Då är problemet att de inte sorteras rätt..

Mikael

Medlem sedan aug. 20002 975 inlägg
#2

Testa något i stil med:

SELECT Familj, COUNT(Familj) AS antal
FROM tabell
GROUP BY Familj
ORDER BY antal DESC
Medlem sedan nov. 2000857 inlägg
#3

Flyttas från PHP..

261 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)