Aracılığıyla paylaş


bag_pack()

Anahtar ve değer listesinden dinamik özellik paketi nesnesi oluşturur.

Kullanım dışı bırakılan diğer adlar: pack(), pack_dictionary()

Syntax

bag_pack(anahtar1,değer1,anahtar2,değer2,... )

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Gerekli Açıklama
Anahtar string ✔️ Anahtar adı.
değer string ✔️ Anahtar değeri.

Not

Anahtar ve değer dizeleri, listenin toplam uzunluğunun eşit olması gereken alternatif bir listedir.

Döndürülenler

Listelenen anahtar ve değer girişlerinden bir dynamic özellik paketi nesnesi döndürür.

Örnekler

1. Örnek

Aşağıdaki örnek, anahtarların ve değerlerin alternatif listesinden bir özellik paketi oluşturur ve döndürür.

print bag_pack("Level", "Information", "ProcessID", 1234, "Data", bag_pack("url", "www.bing.com"))

Sonuçlar

print_0
{"Level":"Information","ProcessID":1234,"Data":{"url":"www.bing.com"}}

Örnek 2

Aşağıdaki örnek SmsMessages ve MmsMessages olmak üzere iki tablo kullanır ve ortak sütunlarını ve diğer sütunlardan bir özellik paketi döndürür. Tablolar, sorgunun bir parçası olarak geçici olarak oluşturulur.

SmsMessages

SourceNumber TargetNumber CharsCount
555-555-1234 555-555-1212 46
555-555-1234 555-555-1213 50
555-555-1212 555-555-1234 32

MmsMessages

SourceNumber TargetNumber AttachmentSize AttachmentType AttachmentName
555-555-1212 555-555-1213 200 jpeg Resim1
555-555-1234 555-555-1212 250 jpeg Resim2
555-555-1234 555-555-1213 300 png Resim3
let SmsMessages = datatable (
    SourceNumber: string,
    TargetNumber: string,
    CharsCount: string
) [
    "555-555-1234", "555-555-1212", "46", 
    "555-555-1234", "555-555-1213", "50",
    "555-555-1212", "555-555-1234", "32" 
];
let MmsMessages = datatable (
    SourceNumber: string,
    TargetNumber: string,
    AttachmentSize: string,
    AttachmentType: string,
    AttachmentName: string
) [
    "555-555-1212", "555-555-1213", "200", "jpeg", "Pic1",
    "555-555-1234", "555-555-1212", "250", "jpeg", "Pic2",
    "555-555-1234", "555-555-1213", "300", "png", "Pic3"
];
SmsMessages 
| join kind=inner MmsMessages on SourceNumber
| extend Packed=bag_pack("CharsCount", CharsCount, "AttachmentSize", AttachmentSize, "AttachmentType", AttachmentType, "AttachmentName", AttachmentName) 
| where SourceNumber == "555-555-1234"
| project SourceNumber, TargetNumber, Packed

Sonuçlar

SourceNumber TargetNumber Dolu
555-555-1234 555-555-1213 {"CharsCount":"50","AttachmentSize":"250","AttachmentType":"jpeg","AttachmentName":"Pic2"}
555-555-1234 555-555-1212 {"CharsCount":"46","AttachmentSize":"250","AttachmentType":"jpeg","AttachmentName":"Pic2"}
555-555-1234 555-555-1213 {"CharsCount":"50","AttachmentSize":"300","AttachmentType":"png","AttachmentName":"Pic3"}
555-555-1234 555-555-1212 {"CharsCount":"46","AttachmentSize":"300","AttachmentType":"png","AttachmentName":"Pic3"}