在这里记录在FineBI开发中的遇到的一些数据处理方法。
1、获取一星期中的首日日期
假设电商数据分析场景中有张订单表,其中有一列为订单日期(order_create_dt),如果需要统计订单金额周同比,一般我们都需要构建一张日期维度表(如:dim_date)。
开发中会以该日期维表作为主表,去关联订单表(如order_detail),这样就可以获取各个自然周的统计数据,可以避免订单数据中当天无日期时,无法获取对应的周指标数据。
在FineBI中行维度(如brand、province、city、district)确定好的情况下,使用如下函数实现:
MIN_AGG(FORMAT(DATE(YEAR(order_create_dt),MONTH(order_create_dt),DAY(order_create_dt),), "yyyy-MM-dd")
)
2、比率类KPI的下钻和上卷
在统计比率类指标的同环比时,不宜直接对比率做计算,一般是单独对比率的分子、分母分别进行累加,再将结果值拿来计算比率。
SUM_AGG(分子对应的指标)/SUM_AGG(分母对应的指标)