码迷,mamicode.com
首页 > 其他好文 > 详细

dax-分类汇总

时间:2019-02-18 17:33:53      阅读:1725      评论:0      收藏:0      [点我收藏+]

标签:替代   shadow   abd   return   roc   tps   col   process   sel   

荒废hin久了,再重新捡起来学习学习……
对这个表分类汇总
技术图片
记得是说earlier函数很好用,但是用var来替代earlier会跑的更快,先复习起来
1、earlier函数 calculate和sumx相同
①【列1】=calculate(sum(‘表1‘[奖金]),filter(‘表1‘,earlier(‘表1‘[部门])=‘表1‘[部门]))
②【列2】=sumx(filter(‘表1‘,‘表1‘[部门]=EARLIER(‘表1‘[部门])),‘表1‘[奖金])
2、var替代使用 calculate和sumx相同
①【列1-1】=var bumen=[部门] return CALCULATE(sum([奖金]),FILTER(‘表1‘,‘表1‘[部门]=bumen))
②【列2-2】=var bumen2=‘表1‘[部门] return sumx(filter(‘表1‘,‘表1‘[部门]=bumen2),‘表1‘[奖金])

earlier跟>=或<=一起使用表示按某列升序/降序累计求和
①【列3】=CALCULATE(sum(‘表1‘[奖金]),FILTER(‘表1‘,EARLIER(‘表1‘[部门])<=‘表1‘[部门]))
按部门列降序累计求和
②【列4】=CALCULATE(sum(‘表1‘[奖金]),FILTER(‘表1‘,EARLIER(‘表1‘[部门])>=‘表1‘[部门]))
按部门列升序累计求和
var同理
技术图片

百度的时候发现了一个很好用的函数allselected()。
分组求和:=CALCULATE(sum(‘表1‘[奖金]),ALLSELECTED(‘表1‘[姓名]))
占比1:=占比1:=DIVIDE(sum(‘表1‘[奖金]),CALCULATE(sum(‘表1‘[奖金]),ALLSELECTED(‘表1‘[部门])))
占比2:=divide(sum(‘表1‘[奖金]),分组求和)
技术图片
技术图片

dax-分类汇总

标签:替代   shadow   abd   return   roc   tps   col   process   sel   

原文地址:http://blog.51cto.com/11729955/2351383

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!