klausul OFFSET
Berlaku untuk: Databricks SQL Databricks Runtime 11.3 LTS ke atas
Melompati sejumlah baris yang dikembalikan oleh suatu pernyataan atau kueri bertumpuk.
Klausa ini sebagian besar digunakan dalam hubungannya dengan LIMIT ke halaman melalui tataan hasil, dan ORDER BY
untuk menghasilkan hasil deterministik.
Catatan
Saat menelusuri tataan hasil menggunakan LIMIT
dan OFFSET
, baris yang dilompati tetap diproses.
Baris-baris ini hanya ditekan dari tataan hasil.
Penelusuran halaman dengan teknik ini tidak disarankan untuk kueri intensif sumber daya.
Sintaks
OFFSET integer_expression
Parameter
integer_expression
Ekspresi harfiah positif yang mengembalikan bilangan bulat.
Contoh
> CREATE TEMP VIEW person (name, age)
AS VALUES ('Zen Hui', 25),
('Anil B' , 18),
('Shone S', 16),
('Mike A' , 25),
('John A' , 18),
('Jack N' , 16);
-- Select the 4th and 5th rows by alphabetical order.
> SELECT name, age FROM person ORDER BY name LIMIT 2 OFFSET 3;
Mike A 25
Shone S 16
-- Specifying ALL option on LIMIT and an OFFSET of zero, returns all the rows.
> SELECT name, age FROM person ORDER BY name LIMIT ALL OFFSET 0;
Anil B 18
Jack N 16
John A 18
Mike A 25
Shone S 16
Zen Hui 25
-- A constant function expression as an input to OFFSET.
> SELECT name, age FROM person ORDER BY name OFFSET length('SPARK');
Zen Hui 25
-- A non-literal expression as an input to OFFSET is not allowed.
> SELECT name, age FROM person ORDER BY name OFFSET length(name);
Error: The offset expression must evaluate to a constant value