MAP
type
Van toepassing op: Databricks SQL Databricks Runtime
Vertegenwoordigt waarden die bestaan uit een set sleutel-waardeparen.
Syntaxis
MAP <keyType, valueType>
keyType
: een ander gegevenstype dan MAP dat de sleutels opgeeft.valueType
: elk gegevenstype dat de waarden opgeeft.
Limieten
Het kaarttype ondersteunt kaarten van elke kardinaliteit die groter of gelijk is aan 0.
De sleutels moeten uniek zijn en niet NULL zijn.
MAP
is geen vergelijkbaar gegevenstype.
Letterlijke waarden
Zie de kaartfunctie voor meer informatie over het produceren van letterlijke kaartwaarden.
Zie de operator [ ] voor meer informatie over het ophalen van waarden uit een kaart per sleutel.
Voorbeelden
> 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>