数据建模DAX语言 (新建度量值、新建列).pdf


立即下载 無口君
2024-07-08
筛选 条件 销量 清除 calculate 产品 咖啡 影响 种类 拿铁
590.4 KB

数据建模DAX语言
(新建度量值、新建列)
函数
calculate函数的筛选条件有很大的局限性
只能输入[列]=固定值
CALCULATE(度量值,<筛选条件1>,<筛选条件1>········)

度量值=calculate([销量],'产品表‘[咖啡种类]="拿铁")
可以在原有筛选条件进行“增删改”生成新的筛选条件

正确的写法=calculate([销量],'产品表’[咖啡种类]=“拿铁”)
在遇到多条件筛选时:可以使用逗号表示同时满足情况,
calculate([销售额],‘产品表’[咖啡种类]in{“拿铁”,“美式”,“卡
布奇诺”})
也可以表达不包含则是:度量值=calculate([销售额],NOT'产品表'[
咖啡种类]in{“拿铁”,“美式”,“卡布奇诺”,})
意思为:求产品表不包含拿铁、美式、卡布奇诺咖啡的销售额
产品表:为引用表不能只引用列会发生混淆
ALL筛选器函数
功能为删除(消除)某个筛选条件扩大范围
ALL销售量=calculate([销量],ALL('销售数九表‘))
all就是在下手数据表中清除了所有筛选条件的影响
还可以按照列来清除筛选影响:ALL销量=calculate([销量],
ALL('产品表’[咖啡种类])
意思为:求产品表中消除咖啡种类的筛选条件的影响之外的销

注意all函数说清除的筛选列和初始筛选条件中的
筛选列完全一致(即同一张表的同一列)
1
ALLEXCEPT
意思为除了指定列外清除筛选影响,清除其他不在引用的列
ALLEXCEPT=CALCULATE([销量],ALLEXCEPT('产品表'[杯
型]))
意思为:求在产品表中所有杯型的销量(大、中、小)只受杯
型筛选影响,清除杯型之外的条件影响。
ALLSELECTED
对视图上显示的筛选条件进行清除筛选(如切片器),而其他
筛选条件保留,进行直观合计

ALLSELECTED=CALCULATE([销量],ALLSELECTED('产品
表"))
占比=sum([销量])/[ALLSELECTED]
这样做可以保证占比每次都是在页面切片器筛选条件下的直接
合计占比,保证每次占比


筛选/条件/销量/清除/calculate/产品/咖啡/影响/种类/拿铁/ 筛选/条件/销量/清除/calculate/产品/咖啡/影响/种类/拿铁/
-1 条回复
登录 后才能参与评论
-->