如何在Azure Logic App中正确使用Aggregation Transformation聚合转换?
Azure Logic App 聚合转换正确使用指南
适配OData查询场景(你当前用$filter/$select的场景)
你之前使用的是Azure SQL连接器「列出行」动作的OData原生参数,要实现聚合需要走$apply参数,不能把聚合语法写到原有$filter/$select参数中,具体操作步骤:
- 新增一个查询参数,键填写
$apply,值直接填你的聚合语句:groupby((Name), aggregate(ID with countdistinct as Total)) - 如果需要同时保留过滤逻辑,不能单独在外层传$filter参数,要把过滤条件嵌套到$apply语句最前面,示例:
filter(CreateTime ge 2024-01-01T00:00:00Z)/groupby((Name), aggregate(ID with countdistinct as Total))
常见报错排查
- 检查字段名大小写,必须和SQL表中的字段完全一致,OData查询对大小写敏感
- 先简化语法验证:先仅传入
groupby((Name))作为$apply的值,确认分组逻辑可以正常返回结果后,再补充聚合部分 - 如果用的是Logic App Standard内置SQL连接器的可视化聚合转换功能,不要手动手写完整groupby语句,直接在可视化配置栏选择分组列为
Name,聚合列选ID、聚合函数选countdistinct、别名为Total即可,手动手写的语法很容易因为括号、空格不匹配触发报错
内容的提问来源于stack exchange,提问作者John Britto
相关产品推荐
相关产品推荐

