Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL]Miejsce w rankingu pobierane wyrywkowo?
Forum PHP.pl > Forum > Przedszkole
messmaker
Jak w temacie, potrzebuję dla wybranego, określonego warunkiem (dla przykładu)
  1. WHERE id='$userid'

pobrać jednocześnie odpowiadające mu miejsce w
  1. ORDER BY donation DESC


Jak to zrobić bez pobierania wszystkich rekordów i sprawdzania który spełnia mój warunek?
dr_bonzo
Policz ilosc rekordow z wiekszym donation niz twoj rekord. To poznasz pozycje + pobierz ten twoj rekord.
SirZooro
To powinno zadziałać smile.gif
  1. SELECT COUNT(*)+1 FROM tabela WHERE donation > (SELECT donation FROM tabela WHERE id='$userid')
messmaker
Cytat
Policz ilosc rekordow z wiekszym donation niz twoj rekord. To poznasz pozycje + pobierz ten twoj rekord.


Chcę, żeby wyświetlało dla X rekordów m.in. ich pozycję w tym rankingu, więc doszłoby zapytanie dla każdego kolejnego rekordu, zaraz spróbuję rozwiązania SirZooro i da znać co z tego wyszło smile.gif


EDIT: poprawka, nie wiem gdzie szukać liczby oznaczającej miejsce w rankingu ohmy.gif chyba czas się przyuczyć SQL winksmiley.jpg
dr_bonzo
Yh, jak chcesz pobrac wiecej rekordow, to pozycja w rankingu == nr wyswietlanego rekordu.
messmaker
Pod warunkiem, że nie są już posortowane pod względem innej wartości, a taki właśnie przypadek mam przed sobą.
dr_bonzo
Hmmm, no to dojoinuj sobie tabele z rankingiem a numeracje wierszy masz tutaj http://nospor.pl/mysql-faq-n25.html#faq-4
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-2025 Invision Power Services, Inc.