关于 calculate 函数中的问题

Power Pivot butter ⋅ 于 2022-02-16 16:52:35 ⋅ 最后回复由 焦棚子 2022-02-16 18:13:34 ⋅ 1145 阅读

种类 数量
A 1
B 2
C 3
D 4
E 5

这个表格是一个原始数据,
现在我用了两个度量值去计算 数量大于2的总和:
度量值2 = CALCULATE(SUM('表'[数量]),FILTER(ALL('表'),[度量值1]>2))
度量值 3 = CALCULATE(sum('表'[数量]),FILTER(ALL('表'),SUM('表'[数量])>2))
最终表格结果:
file

其中度量值2的筛选器中直接用了一个度量值1 (度量值1 = sum('表'[数量] )),其余都是一样的,但是出来的结果却完全不一样。

然后我把后面的filter单独做成了表格,
file
file
为什么filter转化成表格后呈现的值和 加上calculate 后呈现的结果是反的。
求大神帮我解释一下每个度量值的语法以及相关的逻辑,坐等...

成为第一个点赞的人吧 :bowtie:
回复数量: 1
  • 焦棚子 微软 MVP
    2022-02-16 18:13:34

    1、度量值2里面的[度量值1]其实相当于CALCULATE(sum ('表'[数量]) );行上下文转变成了筛选上下文,同时外部CALCULATE的效果是替换筛选上下文,就有了5个12;度量值3中的sum ('表'[数量])筛选上下文就是整张表,等于15,为什么1、2是空,是因为外部的1、2筛选上下文得到的条件是小于等有2的,内外交集后就是blank

    2、其实度量值2和度量值3的算法都是对的,只是看你要赋予什么样的业务逻辑。

暂无评论~~
  • 请务必阅读并严格遵守《社区管理规范与使用说明》
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 发送表情,可用的 Emoji 见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板粘贴上传, 格式限制 - jpg, png, gif
  • 不支持上传附件,请尽可能用文字和图片将问题描述清楚,如实在需要上传附件,可上传到 共享网盘 后分享链接
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter