buildschema() (聚合函數)
建置可接受 DynamicExpr 所有值的最小架構。
注意
此函式會與 summarize 運算子搭配使用。
語法
buildschema
(
DynamicExpr)
深入瞭解 語法慣例。
參數
姓名 | 類型 | 必要 | 描述 |
---|---|---|---|
DynamicExpr | dynamic |
✔️ | 用於匯總計算的表達式。 |
傳回
傳回允許 DynamicExpr 所有值的最小架構。
提示
如果輸入是 JSON 字串,請使用 parse_json() 函式將 JSON 轉換成動態 值。 否則,可能會發生錯誤。
範例
下列範例會根據下列範例建置架構:
{"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)
結果
schema_value |
---|
{“x”:[“long”,“string”],“y”:[“double”,{“w”:“string”}],“z”:{indexer “”:[“long”,“string”]},“t”:{indexer “:”string“}} |
架構明細
在產生的架構中:
- 根對像是一個容器,具有四個名為
x
、y
、z
和t
的屬性。 - 屬性
x
類型 長 或類型 字串。 - 屬性
y
類型 double 或另一個容器,具有類型為 字串的屬性w
。 - 屬性
z
是以indexer
關鍵詞表示的陣列,其中每個專案可以是 長 類型或類型 字串。 - 屬性
t
是以indexer
關鍵詞表示的陣列,其中每個專案都是 字串。 - 每個屬性都是隱含選擇性的,而且任何數位可能都是空的。