分享方式:


MAP 類型

適用於: 檢查標示為是 Databricks SQL 檢查標示為是 Databricks Runtime

表示包含一組索引鍵/值組的值。

語法

MAP <keyType, valueType>
  • keyType:指定索引鍵之 MAP 以外的任何數據類型。
  • valueType:指定值的任何數據類型。

限制

對應類型支援任何基數大於或等於 0 的對應。

索引鍵必須是唯一的,而不是 NULL。

MAP 不是可比較的數據類型。

常值

如需如何產生常值對應值的詳細資訊,請參閱 map 函 式。

如需如何依索引鍵從地圖擷取值的詳細資訊,請參閱 [ ] 運算符

範例

> SELECT map('red', 1, 'green', 2);
  {red->1, green->2}

> SELECT typeof(CAST(NULL AS MAP<TIMESTAMP, INT>));
  MAP<TIMESTAMP, INT>

> SELECT map(array(1, 2), map('green', 5));
  {[1, 2]->{green->5}}

> SELECT CAST(map(struct('Hello', 'World'), 'Greeting') AS MAP<STRUCT<w1:string, w2:string>, string>);
  {{Hello, World}->Greeting}

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

> SELECT map('red', 1) = map('red', 1);
  Error: EqualTo does not support ordering on type map<string,int>