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

DOMO平台如何将同维度多行日期数据合并为单行展示

DOMO 环境下同订单多行数据聚合成单行实现方案

你的需求核心是以order、Model、ord date三个字段为唯一分组键,将同组下分散在不同行的非空日期值合并到单行,同时对rec date按时间升序拆分出带序号的3列,以下是两种可直接落地的实现方式:

方法一:Magic ETL 上游数据预处理(推荐,适配性强)

这个方法是在数据流层面完成聚合,输出的数据集可以给所有卡片复用,性能更稳定,适合数据量较大、后续可能有订单记录数变动的场景,操作步骤如下:

  • 配置分组聚合规则
    拖入「Group By」组件,分组维度勾选order、Model、ord date,对剩余字段配置聚合规则:
    • cur prm、prm date -7D、prm date -14 D、prm date -28 D 四个字段全部选择MAX聚合,该规则会自动忽略空值,提取同组下唯一的非空日期值;聚合后可以直接把带多余空格的字段重命名为目标结构要求的prm date -14D、prm date -28D
  • 生成rec date排序序号
    拖入「Rank & Window」窗口函数组件,分区维度保持和分组维度一致(order、Model、ord date),排序规则选择rec date升序,计算类型选行号(Row Number),生成临时字段rec_rank,同组下的三条记录会自动被标记为1、2、3,对应最早到最晚的收货日期
  • 行转列生成序号收货日期列
    拖入「Pivot Rows to Columns」行转列组件,分区维度保持三个分组键不变,转置列选择刚生成的rec_rank,值字段选择rec date,聚合方式选MAX,转置后会自动生成rec date_1、rec date_2、rec date_3三个字段,重命名为目标要求的rec date 1、rec date 2、rec date 3即可
  • 字段拼接对齐
    将前面聚合得到的prm系列字段、cur prm字段,和行转列得到的rec date系列字段,通过三个分组键做内连接,调整字段顺序和目标表结构一致后输出即可。

方法二:卡片层Beast Mode直接计算(轻量场景适用)

如果不需要修改上游数据集,仅单张可视化卡片需要展示聚合后的结构,可以直接在卡片编辑页配置计算字段,操作步骤如下:

  • 先将order、Model、ord date三个字段拖入维度栏,聚合方式设置为「维度」(不做聚合)
  • 依次新建以下Beast Mode计算字段,直接拖入指标栏即可:
    1. 最新prm及历史prm字段,全部用MAX聚合提取非空值:
    -- cur prm
    MAX(`cur prm`)
    -- prm date -7D
    MAX(`prm date -7D`)
    -- prm date -14D
    MAX(`prm date -14 D`)
    -- prm date -28D
    MAX(`prm date -28 D`)
    
    1. 三个收货日期字段,利用日期统计函数直接提取对应值:
    -- rec date 1 最早的收货日期
    MIN(`rec date`)
    -- rec date 2 中间时间的收货日期
    MEDIAN(`rec date`)
    -- rec date 3 最晚的收货日期
    MAX(`rec date`)
    

注意:该方法仅适合同一个订单固定对应3条收货记录的场景,如果后续每个订单的收货记录数有变动,中位数、最大最小值的逻辑会出错,优先用Magic ETL的方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 21:06:21