Data Studio关联后数据重复,保留Service字段并正确统计员工总数方案
解决方案
方案1:Data Studio侧创建自定义计算指标(无需修改现有表结构,最快生效)
直接在Data Studio的数据源中新增一个计算字段,命名为正确员工总数,公式如下:
SUM(MAX(Total employees) OVER (PARTITION BY Area Id))
逻辑说明:先按区域分组取每个区域唯一的员工总数(即使同一个区域有多行Service,MAX取到的都是同一个固定值),再对所有区域的唯一员工总数求和,完全避免重复统计。同时支持Service字段的筛选:当用户选中特定Service时,分区统计范围会自动限定为筛选后的区域,不会出现统计缺失。
方案2:调整BigQuery侧关联表逻辑(性能更优,适合大量数据场景)
在生成月度汇总关联表时,新增一个仅按区域去重的员工总数字段,不需要修改原始员工表:
- 关联后保留所有原始字段(包括Service和重复的Total employees)
- 新增预聚合字段
area_total_employees,逻辑为:
MAX(`Total employees`) OVER (PARTITION BY `Area Id`) as area_total_employees
- 在Data Studio中直接对
area_total_employees做MAX聚合后求和即可,计算效率比在Data Studio侧实时计算更高。
两种方案都可以实现你要的效果:
- 筛选全部Service时,区域1取到34124,区域2取到82561,求和为116685,符合预期
- 筛选单个Service时,对应区域的员工总数只会统计一次,结果正确
- 筛选多Service时,每个区域也只会统计一次员工总数,不会重复累加
内容的提问来源于stack exchange,提问作者Luiscri
相关产品推荐
相关产品推荐

