You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Join Operator对跨表同名列的重命名规则(无需显式重命名)

能否修改Kusto Join操作符对跨表同名列的重命名规则(默认加"1")?

能否修改Join Operator在连接两张表时,对跨表同名列末尾添加'1'的重命名方式?我希望无需显式重命名列即可实现此需求。

示例查询:

datatable(TableKey:string, CreatedDate:datetime)
['1', datetime('2022-01-01')]
| join kind=inner (
    datatable(TableKey:string, CreatedDate:datetime)
    ['1', datetime('2022-01-02')]
    ) on TableKey

当前执行结果:

TableKey    CreatedDate                  TableKey1   CreatedDate1
1           2022-01-01 00:00:00.0000000  1           2022-01-02 00:00:00.0000000

目前Kusto的Join操作符不支持自定义跨表同名列的默认重命名规则,默认会对右表中非连接键的同名列自动添加后缀"1",这个行为是固定的,无法通过配置修改。

如果不想手动逐个显式重命名列,可参考两种替代方案:

  • 移除重复列:在join后使用project-away去掉不需要的重复列,例如只保留左表的CreatedDate:
    datatable(TableKey:string, CreatedDate:datetime)
    ['1', datetime('2022-01-01')]
    | join kind=inner (
        datatable(TableKey:string, CreatedDate:datetime)
        ['1', datetime('2022-01-02')]
        ) on TableKey
    | project-away CreatedDate1
    
  • 批量预重命名:在子查询中用rename配合通配符批量修改右表列名,实现自定义后缀:
    datatable(TableKey:string, CreatedDate:datetime)
    ['1', datetime('2022-01-01')]
    | join kind=inner (
        datatable(TableKey:string, CreatedDate:datetime)
        ['1', datetime('2022-01-02')]
        | rename * = *_right  // 给所有非连接键列加自定义后缀"_right"
        ) on TableKey
    

内容的提问来源于stack exchange,提问作者PorgtheEaten

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 10:33:58