buildchema() (funzione di aggregazione)
Si applica a: ✅Microsoft Fabric✅Azure Esplora dati✅ Azure Monitor✅Microsoft Sentinel
Compila lo schema minimo che ammette tutti i valori di DynamicExpr.
Sintassi
buildschema
(
DynamicExpr)
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
DynamicExpr | dynamic |
✔️ | Espressione utilizzata per il calcolo dell'aggregazione. |
Valori restituiti
Restituisce lo schema minimo che ammette tutti i valori di DynamicExpr.
Suggerimento
Se l'input è una stringa JSON, usare la funzione parse_json() per convertire il codice JSON in un valore dinamico . In caso contrario, è possibile che si verifichi un errore.
Esempio
L'esempio seguente compila uno schema basato su:
{"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)
Risultati
schema_value |
---|
{"x":["long","string"],"y":["double",{"w":"string"}],"z":{"indexer ":["long","string"]},"t":{""indexer "string"}} |
Lo schema risultante indica che:
- L'oggetto radice è un contenitore con quattro proprietà denominate x, y, z e t.
- La proprietà chiamata
x
è di tipo long o di tipo string. - Proprietà denominata
y
ii di tipo double o un altro contenitore con una proprietà denominataw
stringa di tipo. - La
indexer
parola chiave indica chez
et
sono matrici. - Ogni elemento nella matrice
z
è di tipo long o di tipo string. t
è una matrice di stringhe.- Ogni proprietà è facoltativa in modo implicito e qualsiasi matrice può essere vuota.
Modello di schema
La sintassi dello schema restituito è:
Contenitore ::= '{' Named-type* '}'; Named-type: := (name | '""indexer
') ':' Type; Tipo ::= Tipo primitivo | Tipo unione | Contenitore; Union-type ::= '[' Type* ']'; Tipo primitivo ::= "long" | "string" | ...;
I valori sono equivalenti a un subset di annotazioni di tipo TypeScript, codificate come valore dinamico Kusto. In TypeScript lo schema di esempio sarà:
var someobject:
{
x?: (number | string),
y?: (number | { w?: string}),
z?: { [n:number] : (long | string)},
t?: { [n:number]: string }
}