首页 > 其他 > 详细

dax-分类汇总

时间:2019-02-18 17:07:47      阅读:371      评论:0      收藏:0      [点我收藏+]
荒废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-分类汇总

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!