buildschema() (Aggregationsfunktion)
Erstellt das minimale Schema, das alle Werte von DynamicExpr zulässt.
Hinweis
Diese Funktion wird in Verbindung mit dem summarize-Operator verwendet.
Syntax
buildschema
(
DynamicExpr)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
DynamicExpr | dynamic |
✔️ | Ausdruck, der für die Aggregationsberechnung verwendet wird. |
Gibt zurück
Gibt das minimale Schema zurück, das alle Werte von DynamicExpr zulässt.
Tipp
Wenn es sich bei der Eingabe um eine JSON-Zeichenfolge handelt, verwenden Sie die funktion parse_json(), um den JSON-Code in einen dynamischen Wert zu konvertieren. Andernfalls tritt möglicherweise ein Fehler auf.
Beispiel
Im folgenden Beispiel wird ein Schema basierend auf erstellt:
{"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)
Ergebnisse
schema_value |
---|
{"x":["long","string"],"y":["double",{"w":"string"}],"z":{"indexer :"long","string"]},"t":{"indexer ":"string"}} |
Das resultierende Schema teilt uns Folgendes mit:
- Das Stammobjekt ist ein Container mit vier Eigenschaften namens x, y, z und t.
- Die Eigenschaft namens
x
ist vom Typ long oder vom Typ string. - Die Eigenschaft ii
y
vom Typ double oder ein anderer Container mit einer Eigenschaft vomw
Typ string. - Die
indexer
Schlüsselwort (keyword) gibt an, dassz
undt
Arrays sind. - Jedes Element im Array
z
ist vom Typ long oder vom Typ string. t
ist ein Array von Zeichenfolgen.- Jede Eigenschaft ist implizit optional, und jedes Array kann leer sein.
Schemamodell
Die Syntax des zurückgegebenen Schemas lautet folgendermaßen:
Container ::= '{' Named-type* '}'; Named-type: := (Name | '"indexer
"') ':' Type; Typ ::= Primitive-Type | Union-Typ | Container; Union-type ::= '[' Type* ']'; Primitiver Typ ::= "long" | "string" | ...;
Die Werte entsprechen einer Teilmenge von TypeScript-Typanmerkungen, die als dynamischer Kusto-Wert codiert sind. In TypeScript wäre das Beispielschema wie folgt:
var someobject:
{
x?: (number | string),
y?: (number | { w?: string}),
z?: { [n:number] : (long | string)},
t?: { [n:number]: string }
}
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für