In Oracle wird Fetch verwendet, um die Anzahl der von der Abfrage zurückgegebenen Zeilen zu begrenzen. Sie können die Anzahl der Zeilen angeben, die übersprungen werden sollen, bevor das Zeilenlimit beginnt. Bei Überspringen beträgt der Offset 0. Das Zeilenlimit wird aus berechnet Die Syntax lautet „[OFFSET offset ROWS]FETCH NEXT ROWS[ONLY|WITH TES]“.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle 11g-Version, Dell G3-Computer.
Die FETCH-Klausel kann verwendet werden, um die Anzahl der von der Abfrage zurückgegebenen Zeilen zu begrenzen. In diesem Tutorial erfahren Sie, wie Sie die FETCH-Klausel verwenden.
Syntax der Oracle FETCH-Klausel
Das Folgende veranschaulicht die Syntax der Zeilenbegrenzungsklausel:
[ OFFSET offset ROWS] FETCH NEXT [ row_count | percent PERCENT ] ROWS [ ONLY | WITH TIES ]
Die OFFSET-Klausel gibt die Anzahl der Zeilen an, die übersprungen werden sollen, bevor die Zeilenbegrenzung beginnt. Die OFFSET-Klausel ist optional. Wenn Sie es überspringen, beträgt der Offset 0 und die Zeilenbegrenzung wird ab der ersten Zeile berechnet.
Der Offset muss eine Zahl oder ein Ausdruck sein, dessen Wert eine Zahl ist. Offsets unterliegen den folgenden Regeln:
Wenn der Offset ein negativer Wert ist, wird er als 0 behandelt.
Wenn der Offset NULL oder größer als die Anzahl der von der Abfrage zurückgegebenen Zeilen ist, werden keine Zeilen zurückgegeben.
Wenn der Offset einen Bruch enthält, wird der Bruchteil abgeschnitten.
Die FETCH-Klausel gibt die Anzahl oder den Prozentsatz der zurückzugebenden Zeilen an.
Aus Gründen der semantischen Klarheit können Sie das Schlüsselwort ROW anstelle von ROWS und FIRST anstelle von NEXT verwenden. Beispielsweise verhalten sich die folgenden Klauseln und führen zu denselben Ergebnissen:
FETCH NEXT 1 ROWS FETCH FIRST 1 ROW
ONLY | WITH TIES-Option
Gibt nur die Anzahl der Zeilen oder einen Prozentsatz der Anzahl der Zeilen nach FETCH NEXT (oder FIRST) zurück.
WITH TIES gibt denselben Sortierschlüssel wie die letzte Zeile zurück. Beachten Sie, dass Sie bei Verwendung von WITH TIES eine ORDER BY-Klausel in der Abfrage angeben müssen. Wenn Sie dies nicht tun, gibt die Abfrage keine zusätzlichen Zeilen zurück.
Oracle FETCH-Klausel-Beispiel
1. Beispiel für das Abrufen der ersten N Zeilen von Datensätzen
Die folgende Anweisung gibt die Top-10-Produkte mit dem höchsten Lagerbestand zurück:
-- 以下查询语句仅能在Oracle 12c以上版本执行 SELECT product_name, quantity FROM inventories INNER JOIN products USING(product_id) ORDER BY quantity DESC FETCH NEXT 5 ROWS ONLY;
Empfohlenes Tutorial: „Oracle-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas ist die Verwendung von Fetch in Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!