MAP Jenis

Berlaku untuk:check ditandai ya pemeriksaan Databricks SQL ditandai ya Databricks Runtime

Mewakili nilai yang terdiri dari sekumpulan pasangan kunci-nilai.

Sintaks

MAP <keyType, valueType>
  • keyType: Jenis data apa pun selain MAP yang menentukan kunci.
  • valueType: Jenis data apa pun yang menentukan nilai.

Batas

Jenis peta mendukung peta kardinalitas apa pun yang lebih besar atau sama dengan 0.

Kunci harus unik dan bukan NULL.

MAP bukan tipe data yang sebanding.

Literal

Lihat fungsi peta untuk detail tentang cara menghasilkan nilai peta literal.

Lihat operator [ ] untuk detail tentang cara mengambil nilai dari peta menurut kunci.

Contoh

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