[ ] (köşeli ayraç işareti) işleci

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

Dizin veya anahtar verilen bir dizi öğesi veya eşleme değeri döndürür.

Sözdizimi

expr [ keyExpr ]

Burada köşeli ayraç kullanımının değişmez metin olduğunu ve isteğe bağlı söz dizimini göstermediğini unutmayın.

Bağımsız değişkenler

  • expr: ARRAY veya MAP ifadesi.
  • keyExpr: DIZI expr ise tam sayıdır. Aksi takdirde MAP anahtarının türüyle eşleşen bir ifade.

Döndürülenler

Sonuç türü, ARRAY öğesinin öğe türü veya MAP'in değer türüdür.

Dizinin ilk öğesi dizin 0'dır.

keyExpr MAP expr Azure Databricks null döndürür için geçerli bir anahtar değilse.

keyExpr ARRAY expr için sınır dışıysa Azure Databricks bir INVALID_ARRAY_INDEX hatası oluşturur.

Not

Databricks Runtime'da , spark.sql.ansi.enabled ise falseişleç sınır dışı hatası yerine döndürür NULL .

Yaygın hata koşulları

Örnekler

> 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

> SELECT array(1, 2, 3)[5];
  Error: INVALID_ARRAY_INDEX