All Products
Search
Document Center

MaxCompute:MULTIMAP_FROM_ENTRIES

Last Updated:Mar 27, 2026

Mengonversi array struct yang berisi pasangan kunci-nilai menjadi multimap, di mana setiap kunci unik dipetakan ke array berisi semua nilai terkait.

Sintaksis

multimap_from_entries(array<struct<K, V>>) -> map<K, array<V>>

Parameter

Parameter Type Description
array<struct<K, V>> array<struct> Array struct berisi pasangan kunci-nilai. Setiap struct harus memiliki tepat dua bidang: sebuah kunci dan sebuah nilai.

Nilai kembalian

Mengembalikan map<K, array<V>>. Kunci duplikat digabungkan dengan nilai-nilainya dikumpulkan ke dalam satu array.

Kasus tepi

Condition Result
Array input bernilai null Mengembalikan null
Sebuah struct memiliki jumlah bidang kurang dari atau lebih dari 2 Mengembalikan error
Kunci apa pun bernilai null Mengembalikan error

Contoh

Kueri berikut mengelompokkan nilai berdasarkan kunci. Kunci 1 muncul dua kali, sehingga kedua nilainya digabungkan ke dalam satu array.

SELECT multimap_from_entries(array(struct(1, 'a'),
                                   struct(2, 'b'),
                                   struct(1, 'c')));

Hasil:

{1: ['a', 'c'], 2: ['b']}

Fungsi terkait

MULTIMAP_FROM_ENTRIES adalah fungsi tipe kompleks. Untuk informasi selengkapnya mengenai fungsi untuk memproses tipe kompleks seperti ARRAY, MAP, STRUCT, dan JSON, lihat Complex type functions.