W poniższym zapytaniu:
SELECT column
FROM table
LIMIT 18 OFFSET 8
ile wyników otrzymamy jako wyjście i skąd dokąd?
W poniższym zapytaniu:
SELECT column
FROM table
LIMIT 18 OFFSET 8
ile wyników otrzymamy jako wyjście i skąd dokąd?
Odpowiedzi:
Zwróci 18 wyników, zaczynając od rekordu nr 9, a kończąc na rekordzie nr 26.
Zacznij od przeczytania zapytania z offset. Najpierw przesuwasz o 8, co oznacza, że pomijasz pierwsze 8 wyników zapytania. Następnie ograniczasz do 18. Co oznacza, że bierzesz pod uwagę rekordy 9, 10, 11, 12, 13, 14, 15, 16… 24, 25, 26, które łącznie stanowią 18 rekordów.
Spójrz na to .
A także oficjalna dokumentacja .
LIMIT 8, 18to tylko skrót :)
OFFSET to nic innego jak słowo kluczowe wskazujące kursor początkowy w tabeli
SELECT column FROM table LIMIT 18 OFFSET 8 -- fetch 18 records, begin with record 9 (OFFSET 8)
otrzymasz ten sam formularz wyniku
SELECT column FROM table LIMIT 8, 18
reprezentacja wizualna ( Rto jeden rekord w tabeli w jakiejś kolejności)
OFFSET LIMIT rest of the table
__||__ _______||_______ __||__
/ \ / \ /
RRRRRRRR RRRRRRRRRRRRRRRRRR RRRR...
\________________/
||
your result
Otrzymasz wynik od columnwartości 9 do 26, jak wspomniałeśOFFSET jako 8