首先得规划一下数据模型.我是这么构造的.
自己手动造一个日期表.添加进去进行表关联.
利用关系,如同VLOOKUP一般把订单表里的数据列都移到订单明细表来.
像这样,=RELATED('订单表'[会员ID]),除了城市表有点复杂,需要利用别的公式.
=LOOKUPVALUE('区域表'[城市],'区域表'[城市缩写],LEFT('订单明细'[门店],2))
像问题中的,2.年初至今每月已有会员数量统计,年初至今每月已有会员数量统计,我
猜是包括没有发生交易额的会员在里面吧.公式就大概这么写.
新增会员数:=IF(CALCULATE(COUNTA('会员表'[会员ID]),USERELATIONSHIP('会员表'[办理日期],'日期表'[日期]))<>BLANK(),CALCULATE(COUNTA('会员表'[会员ID]),USERELATIONSHIP('会员表'[办理日期],'日期表'[日期]),DATESYTD('日期表'[日期])))
3.每月新增会员数量.如果是求包括未发生交易额的新增会员数量,比较简单.
新增会员:=CALCULATE(COUNTA('会员表'[会员ID]),USERELATIONSHIP('日期表'[日期],'会员表'[办理日期]))
如果求发生交易额的新增会员,大概是这样.
发生购买新增会员数:=VAR NEW=CALCULATETABLE('会员表','订单明细')
VAR OLD=CALCULATETABLE('会员表',CALCULATETABLE('订单明细',FILTER(ALL('日期表'[日期]),'日期表'[日期]<MIN('日期表'[日期]))))
RETURN CALCULATE(COUNTROWS('会员表'),EXCEPT(NEW,OLD))
4.年初至今每月新增会员数量的环比增长率.这个比较复杂点.如果是求包括没有发生交易额的新增会员环比增长率,大概是这么写.环比的数学公式大概是这样=(本期数-上期数)/上期数*100%.如果求只发生交易的新增会员环比增长率会更复杂些.
新增会员(包括未发生交易的会员)环比增长:=VAR LAST=CALCULATE(
CALCULATE(COUNTA('会员表'[会员ID]),FILTER('日期表','日期表'[日期 (月索引)]=MAX('日期表'[日期 (月索引)]))),USERELATIONSHIP('会员表'[办理日期],'日期表'[日期]))
VAR FIRST=CALCULATE(
CALCULATE(COUNTA('会员表'[会员ID]),FILTER(ALL('日期表'),'日期表'[日期 (月索引)]=(MAX('日期表'[日期 (月索引)])-1))),USERELATIONSHIP('会员表'[办理日期],'日期表'[日期]))
RETURN DIVIDE(LAST-FIRST,FIRST)
|