Nummerierung der Datensätze

floyd69

Neuer Benutzer
Beiträge
3
hallo,
ich habe eine datenbank (bsp)
id name tel
23 paul 222
4 adam 5665
33 eva 33
55 bert 678
42 gera 6777777

mit dem befehl SELECT @Nr:=@Nr +1 Num, id, name, tel FROM tabelle durchnummeriert
aus dem ergebnis
Num id name tel
1 23 paul 222
2 4 adam 5665
3 33 eva 33
4 55 bert 678
5 42 gera 6777777

möchte ich nun wissen, welche nummer der eintrag mit der id 55 hat.
hat einer eine idee, wie diese abfrage ansehen könnte?
danke im voraus
 
Werbung:
Via Subselect. Ganz einfach. Also, naja, in 'richtigen' Datenbanken hättest Du row_number(). Aber Du hast ja MySpielzeug ...
 
Du hast:

Code:
test=*# select * from tab1;
 med_id |  name
--------+-----------------
  1 | aspirin
  2 | acesal
  3 | brospinal
  4 | aspirin complex
  5 | clombanthen
  6 | acesal forte
(6 rows)

via row_number bekommst:

Code:
test=*# select *, row_number() over (order by name) as r from tab1;
 med_id |  name  | r
--------+-----------------+---
  2 | acesal  | 1
  6 | acesal forte  | 2
  1 | aspirin  | 3
  4 | aspirin complex | 4
  3 | brospinal  | 5
  5 | clombanthen  | 6
(6 rows)

Davon der dritte Record:

Code:
test=*# select * from (select *, row_number() over (order by name) as r from tab1) blubber where r = 3;
 med_id |  name  | r
--------+---------+---
  1 | aspirin | 3
(1 row)

Einfach, oder?
 
Werbung:
Zurück
Oben