MAP Türü

Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi yes Databricks Runtime olarak işaretlendi

Bir anahtar-değer çifti kümesinden oluşan değerleri temsil eder.

Sözdizimi

MAP <keyType, valueType>
  • keyType: Anahtarları belirten MAP dışında herhangi bir veri türü.
  • valueType: Değerleri belirten herhangi bir veri türü.

Sınır -ları

Eşleme türü, 0'a eşit veya daha büyük herhangi bir kardinalitenin eşlemelerini destekler.

Anahtarlar benzersiz olmalı ve NULL olmamalıdır.

MAP karşılaştırılabilir bir veri türü değildir.

Hazır

Değişmez değer eşleme değerlerinin nasıl üretildiğine ilişkin ayrıntılar için bkz. harita işlevi.

Anahtara göre eşlemeden değerleri alma hakkında ayrıntılı bilgi için bkz . [ ] işleci .

Örnekler

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