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

使用JSONata按categoryId分组数据:多类别ID数组分组难题

解决数组形式categoryId的分组问题

要处理包含数组型categoryId的数据分组,你可以先把每个多分类的条目拆分成对应数量的独立条目,再按单个categoryId分组,具体JSONata表达式如下:

$flatmap($, function($item) {
  $map($item.categoryId, function($cid) {
    $merge([$item, {"categoryId": $cid}])
  })
}) 
|> $groupBy($.categoryId)

步骤说明:

  • 拆分条目:用$flatmap遍历原始数据,对每个含数组categoryId的条目,通过$map遍历其分类ID数组,复制原条目并将categoryId替换为单个值,$flatmap会自动把所有拆分后的结果扁平化,得到一份每个条目仅含单个分类ID的数据集。
  • 分组:将拆分后的数据集通过$groupBy($.categoryId)按分类ID完成分组,就能得到每个分类对应的所有关联条目。

如果需要对每个分类下的条目去重(比如同一个原条目不要重复出现在多个分组里),可以在拆分后加一层$distinct处理,或者根据业务需求调整逻辑。

内容的提问来源于stack exchange,提问作者İsmail Can Karataş

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 09:34:53