比如批号(年月)为2023-06,产品名称为血液透析浓缩液,投诉类别为桶底漏的;在2023-03至2023-05这三个月没有投诉过,在6月有投诉过算是一个新增问题。其中这个日期是按照仪表板的时间动态的,仪表板时间为2025-05,那就是在2025-02至2025-04之间判断同产品下有没有投诉
新增一列
判断计数列数值,=if(计数>0,"有投诉","没有投诉")
首先在分组汇总前的数据源新增一列:获取时间差(月)=当前日期-批号日期
然后进行分组汇总,分组拖入投诉分类,汇总拖入两个指标:一个拖入投诉分类(自动去重计数),鼠标悬浮后下拉选择汇总条件(限制时间差月<3),重命名为“近3月投诉”;另一个也拖入投诉分类(自动去重计数),鼠标悬浮后下拉选择汇总条件(限制时间差月>=3),重命名为“3月前投诉”。最后新增计算列:if(and(近3月投诉>0,3月前投诉=0),"近三月新增",“非近三月新增”)
使用def函数,def(sum_agg(计数),[年,月],[年=earlier(年),月>=earlier(月)-3,月<=earlier(月)-1])
1、添加时间参数,数值绑定参数
2、添加计算字段:IF(SUM_AGG(值)>=1,“非新增”,投诉类别)
3、过滤组件绑定时间参数(只绑定参数,不要绑定数据集字段)
关于组件参数的使用可以参考文章:FineBI基础功能篇 | 28 如何通过参数实现复杂数据筛选需求?