SQL -Grenze

SQL -Grenze
Mit der Grenze und Offset -Klauseln in SQL können Sie die Anzahl der Datensätze begrenzen, die von einer SELECT -Anweisung zurückgegeben werden.

In diesem Artikel werden die Limit- und Offset -Klauseln in SQL verwendet.

NOTIZ: Es ist gut zu beachten. Es wird jedoch von großen Datenbankmotoren weit verbreitet.

Syntax

Die Syntax für die Limit- und Offset -Klauseln ist wie unten gezeigt:

WÄHLEN
col1, col2,… coln
AUS
TABELLENNAME
Bestellung nach column_name
Grenze Count Offset -Offset;

Der Grenzwert bestimmt die Anzahl der Zeilen/Datensätze, die aus der Abfrage zurückgegeben wurden.

Mit dem Offset -Wert können Sie bestimmte Zeilen überspringen, bevor Sie anfangen, für übereinstimmende Datensätze abzuholen.

NOTIZ: Der Offset -Wert ist nicht erforderlich. Wenn fehlt, holt die Abfrage Datensätze aus der ersten Zeile ab.

Beispiel
Angenommen, Sie haben eine Beispieltabelle und Daten, wie in der folgenden Abfrage gezeigt:

Erstellen von Tabellenmitarbeitern (
id serielle Primärschlüssel,
full_name varchar (255),
E -Mail Varchar (255),
Abteilungsvarchar (100),
start_date Datum,
aktiver Bool,
Kategorie varchar (50)
);
In Mitarbeiter einfügen (Full_Name, E -Mail, Abteilung, start_date, aktiv, Kategorie)
WERTE
('Meghan Edwards', [email protected] ',' Game Development ', 2016-06-22', True, 'Dev-G1'),
('Sam Davis', '[email protected] ',' Game Development ',' 2014-01-04 ', False,' Dev-G1 '),
('Taylor Miller', '[email protected] ',' Game Development ',' 2019-10-06 ', wahr,' dev-g1 '),
('Wilson Smitty', '[email protected] ',' Datenbankentwickler ',' 2016-12-23 ', True,' Dev-DB1 '),
('Barbara Moore', '[email protected] "," Datenbankentwickler "," 2015-12-23 ", true," dev-db1 "),
('Raj Chan', '[email protected] ',' Datenbankentwickler ',' 2017-12-23 ', False,' Dev-DB1 '),
('Susan Brown', '[email protected] ',' DevOps Engineer ',' 2011-12-23 ', True,' Dev-Ops1 '),
('Marial Anderson', [email protected] ',' DevOps Engineer ',' 2015-12-23 ', True,' Dev-Ops1 '),
('Nancy Thomas', '[email protected] ',' DevOps Engineer ',' 2014-12-23 ', False,' dev-ops1 ');

Sie können alle Datensätze in der Tabelle mit der gezeigten Abfrage auswählen:

Wählen Sie * von Mitarbeitern aus;

Dies sollte alle Zeilen wie gezeigt zurückgeben:

Angenommen, wir wollen die ersten 3 Datensätze. Dafür können wir die Grenzklausel als:

Wählen Sie * aus den Mitarbeitern Grenzen 3;

Die obige Abfrage sollte die ersten drei Zeilen ab 1 zurückgeben. Der Ausgang ist wie gezeigt:

Was ist, wenn Sie die folgenden drei Elemente abrufen möchten?? Wir können die unten dargestellte Limit- und Offset -Klausel verwenden:

Wählen Sie * aus den Mitarbeitern aus. Begrenzen Sie 3 Offset 3;

In der obigen Abfrage werden drei Elemente ab der vierten Reihe zurückgegeben (einschließlich). Wenn Sie eine ID für Ihre Zeilen haben, sollte die Ausgabe wie gezeigt beschreibend sein:

Enden

Wie in diesem Artikel dargestellt. Daher ist es gut, diese Funktion für einfache Pagination und hübsche Ausgabe zu verwenden.