Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Pozycja rekordu na liście
pitbull82
post
Post #1





Grupa: Zarejestrowani
Postów: 167
Pomógł: 0
Dołączył: 30.04.2004
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


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,
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




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
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.10.2025 - 14:22