共用方式為


buildschema() (聚合函數)

適用於:✅Microsoft網狀架構✅✅✅

建置可接受 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“}}

架構明細

在產生的架構中:

  • 根對像是一個容器,具有四個名為 xyzt的屬性。
  • 屬性 x 類型 或類型 字串
  • 屬性 y 類型 double 或另一個容器,具有類型為 字串的屬性 w
  • 屬性 z 是以 indexer 關鍵詞表示的陣列,其中每個專案可以是 類型或類型 字串
  • 屬性 t 是以 indexer 關鍵詞表示的陣列,其中每個專案都是 字串
  • 每個屬性都是隱含選擇性的,而且任何數位可能都是空的。