W poniższym zapytaniu:Jakie wiersze są zwracane przy użyciu LIMIT z OFFSET w MySQL?
SELECT column
FROM table
LIMIT 18 OFFSET 8
ile wyniki poznamy jako wyjście i skąd dokąd?
W poniższym zapytaniu:Jakie wiersze są zwracane przy użyciu LIMIT z OFFSET w MySQL?
SELECT column
FROM table
LIMIT 18 OFFSET 8
ile wyniki poznamy jako wyjście i skąd dokąd?
Zwróci 18 wyników, począwszy od rekordu # 9 i kończąc na zapisie # 26.
Zacznij, czytając zapytanie z offset
. Najpierw przesuń o 8, co oznacza, że pomijasz 8 pierwszych wyników zapytania. Następnie ograniczasz się do 18, co oznacza, że bierzesz pod uwagę zapisy 9, 10, 11, 12, 13, 14, 15, 16 ... 24, 25, 26, które są w sumie 18 rekordami.
Sprawdź, czy nie jest dostępny this.
A także official documentation.
masz rację, czy jest jakakolwiek różnica b/w limit 8,18 i limit 18 przesunięcie 8 –
Nie, to jest to samo. 'LIMIT 8, 18' to tylko skrót :) –
Dostaniesz wyjście z column
wartości 9 do 26, jak już wspomniano OFFSET
jako 8
Klauzula LIMIT służy do ograniczania liczby wyników zwracanych w instrukcji SQL. Więc jeśli masz 1000 wierszy w tabeli, ale tylko chce wrócić do pierwszej 10, zrobiłbyś coś takiego:
SELECT column
FROM table
LIMIT 10
ta jest podobna do góry klauzuli o Microsoft SQL Server. Jednak klauzula LIMIT zawsze pojawia się na końcu zapytania w MySQL i PostgreSQL.
Załóżmy teraz, że chcesz pokazać wyniki 11-20. Ze skorygowanym kluczowe jej tak proste, następujące zapytanie zrobi:
SELECT column FROM table
LIMIT 10
OFFSET 10
offset jest nic, ale to tylko słowa kluczowego i wskazać rozpoczęciem kursor w tabeli.
SELECT column FROM table LIMIT 18 OFFSET 8 //start on record 9 (OFFSET 8) with record 18
dostać samej formie Wynik
SELECT column FROM table LIMIT 8,18
Niezłe wyjaśnienie! Dzięki –
Wygląda na to, że nie jesteś jedyną osobą mylić o tym :) –
Zamówienie musi być LIMIT, potem przesunięcie. Jeśli nie, spowoduje to błąd. – Mouser