Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Pobranie 10 wierszy ze środka tabeli
Demoneos
post
Post #1





Grupa: Zarejestrowani
Postów: 149
Pomógł: 0
Dołączył: 26.02.2008

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


Gdyby chodziło o pobranie 10 wierszy z początku lub końca tabeli, to oczywiście użyłbym limit 10. Natomiast gdy chcę pobrać gdzieś ze środka tabeli, to pierwszą rzeczą jaka mi przeszła na myśl, to wykorzystanie pola id:
  1. SELECT * FROM tabela WHERE id BETWEEN 50 AND 60

ale problem w tym, że gdy się usunie rekordy z tabeli, to id się nie przesuwa tylko pozostaje takie same, więc to opada.
Więc jak to zrobić?
1. Może zrobić jakieś dodatkowe pole "nr_kolejnego_wiersza" - przy wstawianiu nowego wiersza inkrementowałbym ilość dotychczasowych wierszy w tabeli i wpisał tą wartość do tego pola. Czy to dobry pomysł?
2. Drugim rozwiązaniem byłoby pokombinowanie w MySQL - najpierw wyświetlam np. od 50 wiersza do końca i z tego 10 pierwszych wierszy. Tylko jak do zaimplementować w MySQL?

Ten post edytował Demoneos 17.12.2011, 14:22:52
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Shili
post
Post #2





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


  1. SELECT * FROM tabela LIMIT 10


To to samo, co:

  1. SELECT * FROM tabela LIMIT 0, 10

Zero to od którego rekordu, 10 to ile rekordów

http://dev.mysql.com/doc/refman/5.0/en/select.html
Wyszukaj sobie słów limit, są tam ładne przykłady poniżej (IMG:style_emoticons/default/smile.gif)
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: 8.10.2025 - 10:01