LIMIT-clausule

Van toepassing op:aangevinkt ja Databricks SQL aangevinkt ja Databricks Runtime

Hiermee beperkt u het aantal rijen dat wordt geretourneerd door de query. Over het algemeen wordt deze component gebruikt in combinatie met ORDER BY om ervoor te zorgen dat de resultaten deterministisch zijn.

Syntaxis

LIMIT { ALL | integer_expression }

Parameters

  • ALLE

    Indien opgegeven, retourneert de query alle rijen. Met andere woorden, er wordt geen limiet toegepast als deze optie is opgegeven.

  • integer_expression

    Een letterlijke expressie die een geheel getal retourneert. Als de expressie niet kan worden gevouwen, niet van het type geheel getal is, resulteert in NULL of resulteert in een negatieve waarde, Azure Databricks INVALID_LIMIT_LIKE_EXPRESSION verhoogt.

Algemene foutvoorwaarden

Voorbeelden

> 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: INVALID_LIMIT_LIKE_EXPRESSION

-- A negative LIMIT is not allowed.
> SELECT name, age FROM person LIMIT -1;
  Error: INVALID_LIMIT_LIKE_EXPRESSION