try_element_at fungsi

Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime 10.4 LTS ke atas

Mengembalikan elemen di arrayExpr , atau NULL jika index berada di indexluar batas.

Mengembalikan nilai mapExpr untuk key, atau id key NULL tidak ada.

Sintaks

try_element_at(arrayExpr, index)
try_element_at(mapExpr, key)

Argumen

  • arrayExpr: Ekspresi ARRAY.
  • index: Ekspresi BILANGAN BULAT.
  • mapExpr: Ekspresi MAP.
  • key: Ekspresi yang cocok dengan jenis kunci mapExpr

Mengembalikan

Jika argumen pertama adalah ARRAY:

  • Hasilnya adalah jenis elemen expr.
  • Jika index negatif, fungsi mengakses elemen dari yang terakhir hingga yang pertama.
  • Azure Databricks menaikkan INVALID_INDEX_OF_ZERO jika index adalah 0.
  • Fungsi mengembalikan NULL jika abs(index) melebihi panjang array, atau jika key tidak ada di peta.

Kondisi kesalahan umum

Contoh

> SELECT try_element_at(array(1, 2, 3), 2);
 2

> SELECT try_element_at(array(1, 2, 3), 5);
 NULL

> SELECT element_at(array(1, 2, 3), 5);
 Error: INVALID_ARRAY_INDEX_IN_ELEMENT_AT

> SELECT try_element_at(map(1, 'a', 2, 'b'), 2);
 b

> SELECT element_at(map(1, 'a', 2, 'b'), 3);
 NULL

> SELECT try_element_at(map(1, 'a', 2, 'b'), 3);
 NULL