TipoMAP
Aplica-se a: SQL do Databricks Runtime do Databricks
Representa valores que incluem um conjunto de pares chave-valor.
Sintaxe
MAP <keyType, valueType>
keyType
: qualquer tipo de dados diferente de MAP que especifique as chaves.valueType
: qualquer tipo de dados que especifique os valores.
Limites
O tipo map dá suporte a 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
Confira Função map para saber como produzir valores de mapa literal.
Confira o operador [ ] para obter detalhes sobre como recuperar valores 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>