Avatar billede jensborgbjerg Nybegynder
14. december 2005 - 14:39 Der er 3 kommentarer og
1 løsning

Kan man fremskaffe rank for en record i mySQL?

Hej

Jeg har følgende spørgsmål:
Hvis man har en tabel, der indeholder en række records med point for en række spil, er det så muligt af udtrække en given records ranking? Dvs. hvis tabellen indeholder f.eks.
id    score:
1      20
2      11
3      55
4      22
kan man så skrive en sql kommando således, at man kan udtrække en værdi, der fortæller, at recorden med id=2 jo har rank på 4 mht. score?

Enhver hjælp til løsning af problemstillingen vil være påskønnet:)

Venlige hilsner

Jens
Avatar billede hmortensen Nybegynder
14. december 2005 - 14:54 #1
Måske noget i den her retning (kan sikkert gøres smartere):
SELECT COUNT(*)+1 AS rank FROM tabel WHERE score > (SELECT score FROM tabel WHERE id = x) ORDER BY score DESC
Avatar billede jensborgbjerg Nybegynder
15. december 2005 - 02:28 #2
Jeg siger tak for hjælpen - kan du lave et svar således, at jeg kan give dig kredit for hjælpen?
Avatar billede hmortensen Nybegynder
15. december 2005 - 08:19 #3
Det var så lidt.

Du fik det til at virke ?
Avatar billede jensborgbjerg Nybegynder
15. december 2005 - 16:15 #4
Jep, og igen; mange tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester