Bagikan melalui


bag_zip()

Berlaku untuk: ✅Microsoft Fabric

Membuat kantong properti dinamis dari dua array dinamis input. Dalam properti-bag yang dihasilkan, nilai dari array input pertama digunakan sebagai kunci properti, sementara nilai dari array input kedua digunakan sebagai nilai properti yang sesuai.

Sintaks

bag_zip( KeysArray,ValuesArray)

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Tipe Wajib Deskripsi
KeysArray dynamic ✔️ Array string. String ini mewakili nama properti untuk kantong properti yang dihasilkan.
ValuesArray dynamic ✔️ Array yang nilainya akan menjadi nilai properti untuk kantong properti yang dihasilkan.

Catatan

  • Jika ada lebih banyak kunci daripada nilai, nilai yang hilang diisi dengan null.
  • Jika ada lebih banyak nilai daripada kunci, nilai tanpa kunci yang cocok diabaikan.
  • Kunci yang bukan string diabaikan.

Mengembalikan

Mengembalikan kantong properti dinamis .

Contoh

Contoh berikut menunjukkan cara menggunakan bag_zip() untuk membuat kantong properti dari dua array. Array pertama berisi kunci, dan array kedua berisi nilai. Tas properti yang dihasilkan berisi kunci dan nilai yang di-zip bersama-sama.

let Data = datatable(KeysArray: dynamic, ValuesArray: dynamic) [
    dynamic(['a', 'b', 'c']), dynamic([1, '2', 3.4])
];
Data
| extend NewBag = bag_zip(KeysArray, ValuesArray)
KeysArray ValuesArray NewBag
['a','b','c'] [1,'2',3.4] {'a': 1,'b': '2','c': 3.4}

Contoh berikut menunjukkan cara menggunakan bag_zip() saat array memiliki panjang yang berbeda. Dalam hal ini, property-bag yang dihasilkan berisi nilai null untuk kunci yang hilang.

let Data = datatable(KeysArray: dynamic, ValuesArray: dynamic) [
    dynamic(['a', 'b', 'c']), dynamic([1, '2'])
];
Data
| extend NewBag = bag_zip(KeysArray, ValuesArray)
KeysArray ValuesArray NewBag
['a','b','c'] [1,'2'] {'a': 1,'b': '2','c': null}

Contoh berikut menunjukkan cara menggunakan bag_zip() saat array memiliki panjang yang berbeda. Dalam hal ini, property-bag yang dihasilkan berisi nilai null untuk kunci yang hilang.

let Data = datatable(KeysArray: dynamic, ValuesArray: dynamic) [
    dynamic(['a', 'b']), dynamic([1, '2', 2.5])
];
Data
| extend NewBag = bag_zip(KeysArray, ValuesArray)
KeysArray ValuesArray NewBag
['a','b'] [1,'2',2.5] {'a': 1,'b': '2'}

Contoh berikut menunjukkan cara bag_zip() menangani kasus di mana array kunci berisi nilai non-string. Kunci apa pun yang bukan string dikecualikan dari kantong properti yang dihasilkan.

let Data = datatable(KeysArray: dynamic, ValuesArray: dynamic) [
    dynamic(['a', 8, 'b']), dynamic([1, '2', 2.5])
];
Data
| extend NewBag = bag_zip(KeysArray, ValuesArray)
KeysArray ValuesArray NewBag
['a',8,'b'] [1,'2',2.5] {'a': 1,'b': 2.5}

Contoh berikut menunjukkan bagaimana bag_zip() perilaku ketika parameter yang dimaksudkan untuk menjadi array nilai sebenarnya bukan array. Dalam hal ini, semua nilai properti yang dihasilkan diatur ke null.

let Data = datatable(KeysArray: dynamic, ValuesArray: dynamic) [
    dynamic(['a', 8, 'b']), dynamic(1)
];
Data
| extend NewBag = bag_zip(KeysArray, ValuesArray)
KeysArray ValuesArray NewBag
['a',8,'b'] 1 {'a': null,'b': null}

Contoh berikut menunjukkan bagaimana bag_zip() perilaku ketika parameter yang dimaksudkan untuk menjadi array kunci sebenarnya bukan array. Dalam hal ini, kantong properti yang dihasilkan null.

let Data = datatable(KeysArray: dynamic, ValuesArray: dynamic) [
    dynamic('a'), dynamic([1, '2', 2.5])
];
Data
| extend NewBag = bag_zip(KeysArray, ValuesArray)
| extend IsNewBagEmpty=isnull(NewBag)
KeysArray ValuesArray NewBag IsNewBagEmpty
sebuah [1,'2',2.5] BENAR