SUMX引发的思考

销售额 = SUM( 'Sales'[SalesAmount] )
产品数 = DISTINCTCOUNT( 'Sales'[ProductKey] )
产品数 error =IF(HASONEVALUE( 'Date'[Qtr] ),[],SUMX(VALUES('Date'[Qtr]), [产品数]))

产品数 error2 =SWITCH(TRUE(),HASONEVALUE( 'Date'[Qtr] ), [产品数],HASONEVALUE( 'Date'[Year] ), SUMX(VALUES('Date'[Qtr]), [产品数]),SUMX(ALLSELECTED('Date'[Year],'Date'[Qtr]), [产品数]))



产品数2 =SUMX(ADDCOLUMNS (SUMMARIZE (Sales,'Date'[Year],'Date'[Qtr]),"@Products",CALCULATE ( DISTINCTCOUNT ( Sales[ProductKey] ) )),[@Products])

ADDCOLUMNS (SUMMARIZE (表,列1,列2),"@Products",[度量值])
在得到正确结果之前我们也错了好多次,且因为一开始时思考的方向的问题,导致问题很复杂,实际上问题很简单,只是想的复杂了。这只是一个很简单的例子,实际工作中我们会遇到更复杂的场景,如果我们一直出错,这时我们就要反思是否要换个思路,是否抓住了问题的本质。


本篇文章来源于微信公众号: PowerBI木小桼