Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Pozycja rekordu na liście
Forum PHP.pl > Forum > Bazy danych > MySQL
pitbull82
Witam

Szukałem już kiedyś czegoś takiego, ale nie udało mi się znaleźć:

Czy jest jakaś metoda na odnalezienie pozycji danego rekordu w danym zapytaniu?

Chodzi mi mniej więcej o coś takiego:

Daję zapytanie np.

Kod
SELECT * FROM x WHERE a=1 AND b=2 AND c=3 ORDER BY z DESC


Teraz chciałbym wiedzieć, jaka jest pozycja np. rekordu o id=15 w takim zapytaniu - czyli np. że jego pozycja to 3, przed nim zostaną zwrócone 2 rekordy, po nim np. 5.

Oczywiście w PHP mogę sobie bez problemu to wyśledzić, ale może da się to jakoś łatwiej załatwić jakimś zapytaniem?

Pozdrawiam,
nospor
http://nospor.pl/mysql-faq-n25.html#faq-8
  1. SET @id=5,@nr = 0, @idnr = 0;
  2. SELECT @idnr AS nr FROM
  3. (SELECT @nr:=@nr+1,IF(ID=@id, @idnr := @nr,@idnr=@idnr),ID FROM tabela WHERE jakiespole ='jakiswarunek' ORDER BY jakiespole jakiessortoanieASClubDESC) podsel WHERE podsel.ID = @id;

za @id wstaw sobie ID rekordu ktorego szukasz
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.