Mam więc funkcję, która zwraca liczbę rekordów, dla których chcę zaimplementować stronicowanie w mojej witrynie. Zasugerowano mi, żebym w tym celu użyć opcji Przesunięcie / pobranie dalej w programie SQL Server 2012. Na naszej stronie internetowej mamy obszar, który zawiera całkowitą liczbę rekordów i stronę, na której jesteś w danym momencie.
Wcześniej otrzymywałem cały zestaw rekordów i byłem w stanie programowo zbudować stronicowanie. Ale używając metody SQL z FETCH NEXT X ROWS TYLKO, otrzymuję tylko X wierszy, więc nie wiem, jaki jest mój całkowity zestaw rekordów i jak obliczyć moje strony minimalne i maksymalne. Jedynym sposobem, w jaki mogę to zrobić, jest dwukrotne wywołanie funkcji i zliczenie wierszy w pierwszym, a następnie uruchomienie drugiego z poleceniem FETCH NEXT. Czy jest lepszy sposób, w którym nie będę musiał dwukrotnie uruchamiać zapytania? Próbuję przyspieszyć działanie, a nie zwolnić.