Avatar billede augustjoergensen Nybegynder
02. juni 2006 - 17:32 Der er 4 kommentarer

Få fat på index af tabel records

Hej eksperter

I mysql har jeg er table med en masse records, i alle records er der en id og et tal - udfra dette tal skal jeg finde hvilken posistion id'en er.

Fx kan der være 5 records som følgende:

id: 1  nr: 4
id: 2  nr: 22
id: 3  nr: 1
id: 4  nr: 12
id: 5  nr: 9

Hvis jeg i mysql statement skal finde posistionen af id 4, skal outputtet være 2, fordi den har det andenhøjeste nummer(nr) efter id 2.

Alt dette har jeg prøvet at indsætte til ét mysql statement, men jeg har ikke fundet en løsning - den dårlige løsning vil være at importere alt dataen til php og finde posistionen der.
Avatar billede arne_v Ekspert
03. juni 2006 - 01:24 #1
hvad med:

SELECT COUNT(*)+1 AS no FROM tabelnavn WHERE id > 4
Avatar billede augustjoergensen Nybegynder
04. juni 2006 - 14:04 #2
arne_v passer ikke helt, eftersom jeg så bare får records efter id er større end 5...
Avatar billede arne_v Ekspert
04. juni 2006 - 17:31 #3
SELECT COUNT(*)+1 AS no FROM tabelnavn WHERE nr > (SELECT nr FROM tabelnavn WHERE id = 4)

måske (forudsætter nyere MySQL)
Avatar billede arne_v Ekspert
09. juli 2006 - 04:06 #4
kommet videre ?
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