MAP Type

Van toepassing op:controleren met ja Databricks SQL-controle gemarkeerd als ja Databricks Runtime

Vertegenwoordigt waarden die bestaan uit een set sleutel-waardeparen.

Syntaxis

MAP <keyType, valueType>
  • keyType: elk ander gegevenstype dan MAP waarmee de sleutels worden opgegeven.
  • valueType: elk gegevenstype waarmee de waarden worden opgegeven.

Grenzen

Het kaarttype ondersteunt kaarten van een kardinaliteit groter of gelijk aan 0.

De sleutels moeten uniek zijn en niet NULL.

MAP is geen vergelijkbaar gegevenstype.

Letterlijke waarden

Zie kaartfunctie voor meer informatie over het produceren van letterlijke kaartwaarden.

Zie de operator [ ] voor meer informatie over het ophalen van waarden uit een kaart met behulp van een 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>