[ ]
(括弧符號) 運算符號
適用於: Databricks SQL Databricks Runtime
傳回指定索引或索引鍵的陣列項目或對應值。
語法
expr [ keyExpr ]
請注意,這裡的方括弧的使用是常值文字,而不是表示選擇性語法。
引數
expr
:ARRAY 或 MAP 運算式。keyExpr
:如果expr
是ARRAY,則為整數數值。 否則,符合 MAP 索引鍵類型的表達式。
傳回
結果類型是 ARRAY 的元素類型或 MAP 的實值型別。
ARRAY 的第一個項目位於索引 0。
keyExpr
如果 不是 MAP expr
Azure Databricks 的有效密鑰,則傳回 Null。
keyExpr
如果超出ARRAY expr
Azure Databricks的界限,就會引發INVALID_ARRAY_INDEX錯誤。
注意
在 Databricks Runtime 中,如果 spark.sql.ansi.enabled 為 false
,運算符會 NULL
傳回 ,而不是超出界限的錯誤。
範例
> 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