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

如何用Spotfire语法统计同一客户初始订单后的指定产品订单数及占比?

Spotfire统计客户初始产品后的特定产品订单方案

核心修正思路

原公式的问题在于只校验了客户是否购买过纸张,但没限定目标订单的日期必须在纸张订单之后。我们需要先锁定每个客户的首次纸张购买日期,再以此为时间节点过滤后续的活页夹/艺术品订单。

分步实现

1. 创建计算列:获取客户首次纸张订单日期

添加一个名为FirstPaperOrderDate的计算列,语法如下:

First([Order Date]) OVER (Intersect([Customer ID], [Category]='paper'))

这个列会返回每个客户第一次购买纸张的日期,未购买过纸张的客户对应值为Null。

2. 创建标记列:标记符合条件的目标订单

添加标记列(用于统计转化订单),语法:

If(([Category]='binders' OR [Category]='Art') AND [Order Date] > [FirstPaperOrderDate], 1, 0)

逻辑说明:仅当订单品类是活页夹/艺术品,且订单日期晚于该客户首次买纸张的日期时,标记为1,否则为0。

3. 统计转化订单数量

直接对上述标记列求和,即可得到所有符合条件的订单总数:

Sum([标记列名称])

4. 计算目标品类的转化占比

  • 活页夹订单的转化占比:纸张购买后产生的活页夹订单数 / 所有活页夹订单数
Sum(If([Category]='binders' AND [Order Date] > [FirstPaperOrderDate], 1, 0)) / Sum(If([Category]='binders', 1, 0))
  • 艺术品订单的转化占比:纸张购买后产生的艺术品订单数 / 所有艺术品订单数
Sum(If([Category]='Art' AND [Order Date] > [FirstPaperOrderDate], 1, 0)) / Sum(If([Category]='Art', 1, 0))

补充说明

  • 未购买过纸张的客户,其活页夹/艺术品订单会被自动排除,不会干扰统计结果
  • 若你想基于客户任意纸张订单而非首次订单来统计,只需把First([Order Date])换成Min([Order Date]),逻辑一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 17:52:33