Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Stronicowanie wyników MSSQL Srv2000
john_doe
post 27.09.2010, 14:58:13
Post #1





Grupa: Zarejestrowani
Postów: 873
Pomógł: 25
Dołączył: 24.07.2005

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


Witam,

mam dane do postronicowania. Natknąłem się na ten wątek
http://forum.php.pl/lofiversion/index.php/t58156.html
jednak nie wiele kumam z tego zapytania. Tzn zapytanie jest trudne ale co w nim zmieniam by pokazać kolejne stronki etc....

Czy może ktoś mnie naprowadzić na właściwy trop?


Go to the top of the page
+Quote Post
CuteOne
post 27.09.2010, 15:32:32
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


LIMIT

ps. MSSQL i MySQL w tym wypadku nie wiele się różnią więc śmiało możesz uczyć się z MySQL aby przenieść je na MSSQL

Ten post edytował CuteOne 27.09.2010, 15:33:36
Go to the top of the page
+Quote Post
Noidea
post 27.09.2010, 16:46:47
Post #3





Grupa: Zarejestrowani
Postów: 226
Pomógł: 61
Dołączył: 20.08.2010

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


SQL Server nie ma LIMIT. Dodatkowo wersja 2000 nie ma ROW_NUMBER(), więc chyba pozostaje ci zrozumieć te zagnieżdżone SELECT TOP n z przeciwnym sortowaniem smile.gif

Gdybyś miał SQL Server 2005 lub nowszy wystarczy coś w rodzaju:
  1. SELECT *, ROW_NUMBER() OVER ( ORDER BY kolumna_po_ktorej_sortujesz ) AS rowN
  2. FROM tabela
  3. WHERE rowN BETWEEN 20 AND 40


--------------------
Go to the top of the page
+Quote Post
vokiel
post 27.09.2010, 16:48:13
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Cytat(CuteOne @ 27.09.2010, 16:32:32 ) *
LIMIT

ps. MSSQL i MySQL w tym wypadku nie wiele się różnią więc śmiało możesz uczyć się z MySQL aby przenieść je na MSSQL

Akurat w tej kwestii się różnią, bo Microsoft SQL Server nie ma LIMIT.

Coś w ten deseń:
  1. SELECT TOP 5 * FROM tabela WHERE id NOT IN (SELECT TOP 5 * id FROM tabela ORDER BY kolumna) ORDER BY kolumna

Pobranie pięciu rekordów, dla których id nie jest w pierwszych 5-ciu rekordach, czyli druga strona stronicowania przy 5 wynikach na stronę.

Ten post edytował vokiel 27.09.2010, 16:49:02


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:33