In der folgenden Abfrage:
SELECT column
FROM table
LIMIT 18 OFFSET 8
Wie viele Ergebnisse erhalten wir als Ausgabe und von wo nach wo?
In der folgenden Abfrage:
SELECT column
FROM table
LIMIT 18 OFFSET 8
Wie viele Ergebnisse erhalten wir als Ausgabe und von wo nach wo?
Antworten:
Es werden 18 Ergebnisse zurückgegeben, beginnend mit Datensatz Nr. 9 und endend mit Datensatz Nr. 26.
Beginnen Sie mit dem Lesen der Abfrage von offset
. Zuerst versetzen Sie um 8, was bedeutet, dass Sie die ersten 8 Ergebnisse der Abfrage überspringen. Dann begrenzen Sie auf 18. Dies bedeutet, dass Sie die Datensätze 9, 10, 11, 12, 13, 14, 15, 16 ... 24, 25, 26 berücksichtigen, was insgesamt 18 Datensätze entspricht.
Überprüfen Sie dies heraus.
Und auch die offizielle Dokumentation .
LIMIT 8, 18
ist nur eine Abkürzung :)
OFFSET
ist nichts anderes als ein Schlüsselwort, das den Startcursor in der Tabelle angibt
SELECT column FROM table LIMIT 18 OFFSET 8 -- fetch 18 records, begin with record 9 (OFFSET 8)
Sie würden das gleiche Ergebnisformular erhalten
SELECT column FROM table LIMIT 8, 18
visuelle Darstellung ( R
ist ein Datensatz in der Tabelle in einer bestimmten Reihenfolge)
OFFSET LIMIT rest of the table
__||__ _______||_______ __||__
/ \ / \ /
RRRRRRRR RRRRRRRRRRRRRRRRRR RRRR...
\________________/
||
your result
Sie erhalten eine Ausgabe von column
9 bis 26, wie Sie OFFSET
als 8 erwähnt haben