make_bag_if() (função de agregação)
Cria um dynamic
conjunto de propriedades JSON (dicionário) de valores expr em registros para os quais o predicado é avaliado como true
.
Valores nulos são ignorados e não entram no cálculo.
Observação
Essa função é usada em conjunto com o operador summarize.
Sintaxe
make_bag_if(
predicado expr,
[,
maxSize])
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Digitar | Obrigatória | Descrição |
---|---|---|---|
expr | dynamic |
✔️ | A expressão usada para o cálculo de agregação. |
predicate | bool |
✔️ | O predicado que avalia como true , para que expr seja adicionado ao resultado. |
maxTamanho | int |
O limite no número máximo de elementos retornados. O valor padrão e máximo é 1048576. |
Devoluções
Retorna um dynamic
conjunto de propriedades JSON (dicionário) de valores expr em registros para os quais o predicado é avaliado como true
. Os valores que não são do dicionário serão ignorados.
Se uma chave aparecer em mais de uma linha, um valor arbitrário, fora dos valores possíveis para essa chave, será selecionado.
Observação
Esta função sem o predicado é semelhante ao make_bag
.
Exemplo
O exemplo a seguir mostra um pacote de propriedades JSON compactado.
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)
Saída
dict |
---|
{ "prop01": "val_a", "prop03": "val_c" } |
Use o plugin bag_unpack() para transformar as chaves da bolsa na saída make_bag_if() em colunas.
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)
Saída
prop01 | prop03 |
---|---|
val_a | val_c |
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de