power bi的切片时间怎么设置?PowerBI中标记为日期表
power bi的切片时间怎么设置?PowerBI中标记为日期表发现这两个度量值并没有计算出来,是什么原因导致的呢?PYSales =CALCULATE ( //上一年的销售额 [Sales Amount] DATEADD ( '日期表'[日期] -1 YEAR ))YOY% =VAR dif_sales = [SalesAmount] - [PY Sales] //今年相对去年的增长值VAR per_sales = DIVIDE ( //同比增长率 dif_sales [PYSales] BLANK() )RETURN per_sales当我们把PY Sales和YOY % 拖到值位置后,效果如下:销售订单表与日期表的关系是基于发货日期序 和日期序 建立。(两列都是整数格式)首先准备基本
用过Power BI的小伙伴都知道,我们日常的分析工作中,基本上所有的业务都会涉及到日期维度的逻辑。
在模型关系中,日期表和事实表的字段不匹配的话,我们的计算就会发生错误。
所以今天小编为大家分享Power BI中“标记为日期表”的用法。
今天的案例是一个超市数据模型:
销售订单表与日期表的关系是基于发货日期序 和日期序 建立。(两列都是整数格式)
首先准备基本度量值
SalesAmount =SUMX ( '销售订单' '销售订单'[销售额])
新建一个矩阵:
PYSales =CALCULATE ( //上一年的销售额 [Sales Amount] DATEADD ( '日期表'[日期] -1 YEAR ))
YOY% =VAR dif_sales = [SalesAmount] - [PY Sales] //今年相对去年的增长值VAR per_sales = DIVIDE ( //同比增长率 dif_sales [PYSales] BLANK() )RETURN per_sales
当我们把PY Sales和YOY % 拖到值位置后,效果如下:
发现这两个度量值并没有计算出来,是什么原因导致的呢?
为了找出原因,我们把日期表执行“标记为日期表”操作。
这时再看报表,度量值正确计算了:
以上事实表和日期表的关系,是基于两表中数值型格式的列作关联,这时我们创建的度量值不能正常参与计算,报表显示错误。我们把日期表“标记为日期表”后,度量值就可以正常计算了。
所以,当日期表和事实表的关系,不是基于日期格式的列所创建,而是基于其他格式的列所创建的时候,我们需要把日期表执行“标记为日期表”操作。
那我们把两表间的关系建立在两个日期格式的列的基础上,会是什么效果呢?
验证这个效果前,我们先取消一下标记为日期表。我们把日期表和销售订单表的关系调整为:基于发货日期和日期列(都是日期格式)建立表间关系。
发现度量值也可以正常计算:
而且,如果把日期表执行“标记为日期表”,这个结果也是不变的。这里大家可以自行验证一下。
小编想说,日常建模中,将日期表“标记为日期表”不是必须的,但如果不是基于日期列建立表间关系,那必须执行“标记为日期表”操作才可以正确计算。而标记为日期表,则可以简化很多关于时间序列的运算。
* PowerPivot工坊原创文章,转载请注明出处!
延伸阅读:
一文了解Power BI中DAX公式编辑器的常用快捷键
利用DAX实现动态显示图表标题
技巧分享 | 折线图的层级下钻
通过DAX控制条形图颜色
使用DAX控制切片器显示
如果您想深入学习微软Power BI,欢迎登录网易云课堂试听学习我们的“从Excel到Power BI数据分析可视化”系列课程。或者关注我们的公众号(PowerPivot工坊)后猛戳”在线学习”。
长按下方二维码关注“Power Pivot工坊”获取更多微软Power BI、PowerPivot相关文章、资讯,欢迎小伙伴儿们转发分享~