Bagikan melalui


Klausul LIMIT

Berlaku untuk: centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

Membatasi jumlah baris yang dikembalikan oleh Query. Secara umum, klausul ini digunakan bersama dengan PERMINTAAN OLEH untuk memastikan bahwa hasilnya deterministik.

Sintaks

LIMIT { ALL | integer_expression }

Parameter

  • ALL

    Jika ditentukan, kueri mengembalikan semua baris. Dengan kata lain, tidak ada batasan yang diterapkan jika opsi ini ditentukan.

  • integer_expression

    Ekspresi literal 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 first two rows.
> SELECT name, age FROM person ORDER BY name LIMIT 2;
 Anil B  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 returns all the rows.
> SELECT name, age FROM person ORDER BY name LIMIT ALL;
  Anil B  18
  Jack N  16
  John A  18
  Mike A  25
 Shone S  16
 Zen Hui  25

-- A function expression as an input to LIMIT.
> SELECT name, age FROM person ORDER BY name LIMIT length('SPARK');
  Anil B  18
  Jack N  16
  John A  18
  Mike A  25
 Shone S  16

-- A non-literal expression as an input to LIMIT is not allowed.
SELECT name, age FROM person ORDER BY name LIMIT length(name);
Error: The limit expression must evaluate to a constant value