[ ]-Operator (eckige Klammern)

Gilt für:durch Häkchen mit „Ja“ markiert Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime

Gibt ein Arrayelement oder einen Zuordnungswert zurück, wenn ein Index oder Schlüssel angegeben wird

Syntax

expr [ keyExpr ]

Beachten Sie, dass die Verwendung von Klammern hier als Literaltext erfolgt und keine optionale Syntax angibt.

Argumente

  • expr: Ein ARRAY- oder MAP-Ausdruck.
  • keyExpr: Wenn expr ein ARRAY ist, ein integraler numerischer Wert. Andernfalls ein Ausdruck, der dem Typ des Schlüssels des MAP-Elements entspricht.

Gibt zurück

Der Ergebnistyp ist der Elementtyp des ARRAY oder der Werttyp der MAP.

Das erste Element eines ARRAY befindet sich am Index 0 (null).

Wenn keyExpr kein gültiger Schlüssel für den MAP-Wert expr ist, gibt Azure Databricks NULL zurück.

Wenn sich keyExpr außerhalb des gültigen Bereichs für das ARRAY expr befindet, löst Azure Databricks einen INVALID_ARRAY_INDEX-Fehler aus.

Hinweis

In Databricks Runtime gibt der Operator anstelle eines Fehlers vom Typ „außerhalb des gültigen Bereichs“ NULL zurück, wenn spark.sql.ansi.enabled auf false festgelegt ist.

Beispiele

> SELECT a[2] FROM VALUES(array(10, 20, 30)) AS T(a);
  30

> SELECT m[1] FROM VALUES(map(1, 'Hello', 2, 'World')) AS T(m);
  Hello