buildschema() (função de agregação)
Cria o esquema mínimo que admite todos os valores de DynamicExpr.
Observação
Essa função é usada em conjunto com o operador summarize.
Sintaxe
buildschema
(
DynamicExpr)
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Digitar | Obrigatória | Descrição |
---|---|---|---|
DynamicExpr | dynamic |
✔️ | Expressão usada para o cálculo de agregação. |
Devoluções
Retorna o esquema mínimo que admite todos os valores de DynamicExpr.
Dica
Se a entrada for uma cadeia de caracteres JSON, use a função parse_json() para converter o JSON em um valor dinâmico . Caso contrário, poderá ocorrer um erro.
Exemplo
O exemplo a seguir cria um esquema com base em:
{"x":1, "y":3.5}
{"x":"somevalue", "z":[1, 2, 3]}
{"y":{"w":"zzz"}, "t":["aa", "bb"], "z":["foo"]}
datatable(value: dynamic) [
dynamic({"x":1, "y":3.5}),
dynamic({"x":"somevalue", "z":[1, 2, 3]}),
dynamic({"y":{"w":"zzz"}, "t":["aa", "bb"], "z":["foo"]})
]
| summarize buildschema(value)
Resultados
schema_value |
---|
{"x":["long","string"],"y":["double",{"w":"string"}],"z":{"indexer ":["long","string"]},"t":{"indexer ":"string"}} |
O esquema resultante nos diz que:
- O objeto raiz é um contêiner com quatro propriedades chamadas x, y, z e t.
- A propriedade chamada
x
é do tipo long ou do tipo string. - A propriedade chamada
y
ii do tipo double, ou outro contêiner com uma propriedade chamadaw
do tipo string. - A
indexer
palavra-chave indica quez
et
são matrizes. - Cada item na matriz
z
é do tipo long ou do tipo string. t
é uma matriz de cadeias de caracteres.- Todas as propriedades são implicitamente opcionais e qualquer matriz pode estar vazia.
Modelo de esquema
A sintaxe do esquema retornado é:
Contêiner ::= '{' Named-type* '}'; Nomeado-tipo: := (nome | '"indexer
"') ':' Tipo; Tipo ::= Tipo primitivo | Tipo de união | Recipiente; Tipo de união ::= '[' Tipo* ']'; Tipo primitivo ::= "longo" | "corda" | ...;
Os valores são equivalentes a um subconjunto de anotações do tipo TypeScript, codificadas como um valor dinâmico Kusto. No TypeScript, o esquema de exemplo seria:
var someobject:
{
x?: (number | string),
y?: (number | { w?: string}),
z?: { [n:number] : (long | string)},
t?: { [n:number]: string }
}
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