Partilhar via


Tipo MAP

Aplica-se a:Marque Sim Databricks SQL Marque Sim Databricks Runtime

Representa values compreendendo uma set de pares chave-valor.

Sintaxe

MAP <keyType, valueType>
  • keyType: Qualquer tipo de dados diferente de MAP especificando as chaves.
  • valueType: Qualquer tipo de dado que especifique o values.

Limites

O tipo de mapa suporta mapas de qualquer cardinalidade maior ou igual a 0.

As chaves devem ser exclusivas e não NULL.

MAP não é um tipo de dados comparável.

Literais

Consulte a função do mapa em para obter detalhes sobre como produzir o mapa literal .

Consulte o operador [ ] para obter detalhes de como recuperar values de um mapa por chave.

Exemplos

> 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>