ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 412|回复: 9

[求助] 关于事实表筛选出错的问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-12-16 21:22 | 显示全部楼层 |阅读模式
本帖最后由 gavin.w 于 2022-12-16 21:32 编辑

各位大佬,


如图所示,创建了两个返回去年家具数量的度量值。


用维度表筛选家具时返回正确,用事实表筛选家具时却返回错误。


想请教下后者错误的原理,尤其总计的3,941是如何而来的。

谢谢。


  1. 家具数量LY_维度表 =
  2. CALCULATE(
  3.     [数量LY],
  4.     FILTER('产品','产品'[类别]="家具")
  5. )
复制代码
  1. 家具数量LY_事实表 =
  2. CALCULATE(
  3.     [数量LY],
  4.     FILTER('订单','订单'[类别]="家具")
  5. )
复制代码



关于事实表筛选出错的问题.png

关于事实表筛选出错的问题.zip

536.33 KB, 下载次数: 7

TA的精华主题

TA的得分主题

发表于 2022-12-16 22:34 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-12-17 10:55 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
libo5563 发表于 2022-12-16 22:34
是时候了解 扩展表了

粗略了解了下,扩展表是向一端维度表延伸的表,但还是没明白错误的原理。

望大佬指点。

谢谢。


  1. 家具数量LY_1_Filter =
  2. CALCULATE(
  3.     [数量LY],
  4.     FILTER('订单','订单'[类别]="家具")
  5. )
复制代码
  1. 家具数量LY_2_KeepFilters =
  2. CALCULATE(
  3.     [数量LY],
  4.     KEEPFILTERS('订单'[类别]="家具")
  5. )
复制代码
  1. [家具数量LY_3_Values_'订单'[类别]]] =
  2. CALCULATE(
  3.     [数量LY],
  4.     FILTER(VALUES('订单'[类别]),'订单'[类别]="家具")
  5. )
复制代码
  1. [家具数量LY_4_All_'订单'[类别]]] =
  2. CALCULATE(
  3.     [数量LY],
  4.     FILTER(ALL('订单'[类别]),'订单'[类别]="家具")
  5. )
复制代码
  1. 家具数量LY_5_All_'订单' =
  2. CALCULATE(
  3.     [数量LY],
  4.     FILTER(ALL('订单'),'订单'[类别]="家具")
  5. )
复制代码


扩展表的问题.png

TA的精华主题

TA的得分主题

发表于 2022-12-18 08:46 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
说实在的,现在来PBI版最大的收获,不是来这里学到什么了,而是来这里看各种有趣的度量值写法以及深究其中的问题。只能说你这个错误相当高级,前期如果没有对很多细节的详细了解是不可能找出错误原因的。


把你写的嵌套度量值部分还原回去,就变成
  1. <blockquote>家具数量LY_事实表 =
复制代码

image.png

FURNITURE.zip

225.54 KB, 下载次数: 3

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2022-12-18 09:33 | 显示全部楼层
ThxAlot 发表于 2022-12-18 08:46
说实在的,现在来PBI版最大的收获,不是来这里学到什么了,而是来这里看各种有趣的度量值写法以及深究其中 ...

感谢大佬拨冗指点。

当没有时间上下文时,原来会对每一天进行相同的计算。
扩展表的问题.1.png

TA的精华主题

TA的得分主题

发表于 2022-12-18 10:54 | 显示全部楼层
为了避坑,CALCULATEl里面写的条件  尽量用维度表的列做条件 ,
当你用事实表做条件时,套用FILTER函数,FILTER第一参数的表,不套all  先被外部筛选条件筛选,计算完了,再考虑FILTER完的事实表 扩展列,覆盖外部筛选条件的情况,最后再计算cal的第一参数,是不是挺绕的,
为了避坑,少把事实表放筛选条件里,尽量用列,或几列组成的表,一方面效率高点,另一方面不用考虑扩展表,我是这么理解的

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2022-12-18 15:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
gavin.w 发表于 2022-12-18 09:33
感谢大佬拨冗指点。

当没有时间上下文时,原来会对每一天进行相同的计算。

我昨天的回复写了足足二十分钟,但不知道为什么发出来的时候只剩这么几个字了。。。实在是没精力再重新写一遍。

你要是想了解所有细节,就发站内信息,我告诉你微信号,你再用微信联系我吧;记得等我下次回国请我吃饭

TA的精华主题

TA的得分主题

发表于 2022-12-18 15:49 | 显示全部楼层
libo5563 发表于 2022-12-18 10:54
为了避坑,CALCULATEl里面写的条件  尽量用维度表的列做条件 ,
当你用事实表做条件时,套用FILTER函数,F ...

另外的一个大坑就是嵌套的“复杂”度量值,即本身就含有CALCULATE/CALCULATETABLE/时间智能函数等的度量值:因为在外层上下文计算完后,还需要在这个嵌套的度量值内再次进行上下文的调整、计算,出错几率大增。

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-1-23 20:04 | 显示全部楼层
ThxAlot 发表于 2022-12-18 15:41
我昨天的回复写了足足二十分钟,但不知道为什么发出来的时候只剩这么几个字了。。。实在是没精力再重新写 ...

非常感谢大佬热心解答、专业指点,已站内消息,祝好。

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-1-23 20:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
libo5563 发表于 2022-12-18 10:54
为了避坑,CALCULATEl里面写的条件  尽量用维度表的列做条件 ,
当你用事实表做条件时,套用FILTER函数,F ...

感谢大佬指点。

实务中,当维度表基数较大时,例如几百万的会员主档表,用维度表筛选的速度,可能不及事实表筛选来得快。

谢谢。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-6-13 17:59 , Processed in 0.039791 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表