MAP
-Typ
Gilt für: Databricks SQL Databricks Runtime
Stellt Werte dar, die aus einer Menge von Schlüssel-Wert-Paaren bestehen.
Syntax
MAP <keyType, valueType>
keyType
: Ein anderer Datentyp als MAP, der die Schlüssel an gibt.valueType
: Alle Datentypen, die die Werte angeben.
Grenzwerte
Der map-Typ unterstützt Zuordnungen beliebiger Kardinalität, die größer oder gleich 0 sind.
Die Schlüssel müssen eindeutig sein und dürfen nicht NULL sein.
MAP
ist kein vergleichbarer Datentyp.
Literale
Unter map-Funktion finden Sie Details zum Erstellen von Literalmap-Werten.
Weitere Informationen zum Abrufen von Werten aus einer Zuordnung nach Schlüssel finden Sie unter [ ]-Operator.
Beispiele
> 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>