gpt4 book ai didi

azure-data-explorer - 不同的数组类型,在 set_difference() 函数中进行比较

转载 作者:行者123 更新时间:2023-12-04 07:46:03 25 4
gpt4 key购买 nike

我在从 set_difference() 获得预期结果时遇到了一些问题.我以为我正在比较两个动态数组,但我不确定差距在哪里。我唯一的额外见解是,当我使用 gettype() 比较两个数组时函数,我得到以下信息:
第一个数组

  • 使用 make_list 聚合创建,例如
  • | summarize inv_list = make_list(Date)
  • 当我在数组上运行 gettype() 时:
  • "type_inv_list": array
    第二个数组
  • 通过标量函数创建
  • let period_check_range = todynamic(range(make_datetime(start_date), datetime_add('day',8,make_datetime(start_date)),1d));
  • 当我在数组上运行 gettype() 时:
  • "type_range___scalar_90e56a216d8942f28e6797e5abc35dd9": array
    关于如何使这些数组工作的任何指导,以便我可以使用 set_difference()功能?

    最佳答案

    你失踪了 toscalar() (参见 doc )在第一个数组中。当您运行时 | summarize ...结果你得到了一张表,但你真正想要的是一个单一的标量,这就是为什么toscalar()需要。
    以下是如何实现您想要的:

    let StartDate = ago(10d);
    let Array1 = toscalar(MyTable | summarize make_set(Timestamp));
    let Array2 = todynamic(range(make_datetime(StartDate), datetime_add('day',8,make_datetime(StartDate)),1d));
    print set_difference(Array2, Array1)
    顺便说一句,你可能想使用 make_set而不是 make_list因为您对重复值不感兴趣。

    关于azure-data-explorer - 不同的数组类型,在 set_difference() 函数中进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67190519/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com