make_bag_if() (toplama işlevi)
Şunlar için geçerlidir: ✅Microsoft Fabric✅
dynamic
Koşul olarak değerlendirilen kayıtlarda ifade değerlerinin true
JSON özellik paketini (sözlük) oluşturur.
Null değerler yoksayılır ve hesaplamayı dikkate almaz.
Sözdizimi
make_bag_if(
,
ifade koşulu [,
maxSize])
Söz dizimi kuralları hakkında daha fazla bilgi edinin.
Parametreler
Ad | Tür | Zorunlu | Açıklama |
---|---|---|---|
ifade | dynamic |
✔️ | Toplama hesaplaması için kullanılan ifade. |
yüklem | bool |
✔️ | İfadenin sonuda eklenmesi için true olarak değerlendirilen koşul. |
maxSize | int |
Döndürülen öğe sayısı üst sınırı. Varsayılan ve maksimum değer 1048576. |
Döndürülenler
dynamic
Koşul olarak değerlendirilen kayıtlardaki ifade değerlerinin true
JSON özellik paketini (sözlük) döndürür. Sözlük olmayan değerler atlanır.
Bir anahtar birden fazla satırda görünüyorsa, bu anahtar için olası değerlerden rastgele bir değer seçilir.
Not
Koşulsuz bu işlev ile make_bag
benzerdir.
Örnek
Aşağıdaki örnekte paketlenmiş bir JSON özellik paketi gösterilmektedir.
let T = datatable(prop:string, value:string, predicate:bool)
[
"prop01", "val_a", true,
"prop02", "val_b", false,
"prop03", "val_c", true
];
T
| extend p = bag_pack(prop, value)
| summarize dict=make_bag_if(p, predicate)
Çıktı
Dict |
---|
{ "prop01": "val_a", "prop03": "val_c" } |
make_bag_if() çıkışındaki çanta anahtarlarını sütunlara dönüştürmek için bag_unpack() eklentisini kullanın.
let T = datatable(prop:string, value:string, predicate:bool)
[
"prop01", "val_a", true,
"prop02", "val_b", false,
"prop03", "val_c", true
];
T
| extend p = bag_pack(prop, value)
| summarize bag=make_bag_if(p, predicate)
| evaluate bag_unpack(bag)
Çıktı
prop01 | prop03 |
---|---|
val_a | val_c |
İlgili içerik
- Toplama işlevi türlerini bir bakışta
- make_bag() (toplama işlevi)
- bag_unpack()
- bag_pack()
- make_list_if() (toplama işlevi)
- parse_json()