Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

SQL: Klauzula OFFSET

czwartek,

SQL: Klauzula OFFSET

Klauzula 'OFFSET' w SQL jest używana w połączeniu z 'LIMIT' do przesuwania punktu, w którym zaczyna się zwracanie rekordów w wyniku zapytania. To szczególnie przydatne w paginacji, gdy chcesz pokazać użytkownikowi dane podzielone na mniejsze, łatwiejsze do zarządzania strony.

Jak to działa?

'OFFSET' określa liczbę rekordów, które należy pominąć, zanim zaczną być zwracane dane. Kiedy używasz 'LIMIT' razem z 'OFFSET', decydujesz o tym, ile rekordów ma zostać zwróconych ('LIMIT') oraz ile rekordów z początku zbioru wyników ma zostać pominiętych ('OFFSET').

Przykładowe zapytanie

SELECT * FROM tabela
LIMIT liczba_rekordów OFFSET liczba_pominiętych_rekordów;

Na przykład:

SELECT * FROM pracownicy
LIMIT 10 OFFSET 15;

To zapytanie zwróci 10 rekordów, pomijając pierwsze 15 rekordów w tabeli 'pracownicy'. Innymi słowy, zwrócone zostaną rekordy od 16 do 25.

Uwagi

  • 'LIMIT' i 'OFFSET' muszą być użyte po wszystkich innych klauzulach zapytania, takich jak 'WHERE', 'GROUP BY', 'HAVING' itd.
  • Używanie 'OFFSET' na dużych tabelach może być nieefektywne, szczególnie z dużymi wartościami offsetu, ponieważ baza danych musi przeczytać i pominąć wiele rekordów, zanim dotrze do tych, które mają być zwrócone.
  • Bez 'ORDER BY', wyniki zapytania mogą być niespójne, szczególnie w dynamicznych bazach danych, gdzie rekordy mogą być dodawane, aktualizowane lub usuwane.
  • Chociaż 'OFFSET' jest powszechnie wspierany, różne systemy baz danych mogą mieć inne sposoby realizacji tej funkcjonalności (na przykład, SQL Server używa 'OFFSET ... FETCH NEXT').

Dowiedz się więcej

Artykuł: Marc Andreessen

Marc Andreessen

Artykuł: Zakończenie staży

Zakończenie staży

Artykuł: Brendan Eich

Brendan Eich

Artykuł: Nvidia GeForce 200

Nvidia GeForce 200

Artykuł: Pierwszy dzień w Splicie

Pierwszy dzień w Splicie

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły