7.2 PowerBI系列之DAX函数专题-同比环比分析(dateadd)

文章讲述了如何创建和使用日历表来与事实表关联,确保时间智能函数的准确性。通过示例展示了如何定义月份序号、计算销售额及其同比、环比增长,并介绍了DATEADD函数在处理日期上的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一些知识

日历表一定要通过日期格式的字段与事实表进行关联,否则时间智能函数可能无法准确计算。

实例

//自动创建日期表// date = calendarauto()
//默认是从事实表中最小年份和最大年份的1月到12月,如果需要指定不同的财年月份,可以给这个函数添加参数
//calendarauto(6)
//代表以6月份作为财年结束,生成的日期表会以7月1日开始
//另外注意日期表的日期必须连续,并且年度需要包含完整的财年天数
//取出月份序号 新建列 // month_no = month('date'[date])
//取出月份英文名 新建列 //  month_desc = format('date'[date],"mmm")

按照月份序号对数据进行排序,结果如图所示
在这里插入图片描述

度量值 销售额 = sum(‘订单表’[销售额])
度量值 去年同期销售额 = calculate([销售额],dateadd('date'[date],-1,year))  
//Dateadd能够根据当前上下文,根据所给参数向前或者向后加减一个时间单位
度量值 同比增长 yoy% =if(
	[去年同期销售额]>0, 
	divide([销售额]-[去年同期销售额],[去年同期销售额]),
	if(and([销售额]>0,[去年同期销售额]=0),1,balnk(),
	)
度量值 上月销售额 = calculate(
[销售额],
dateadd('date'[date],-1,month)
)
度量值 月环比 = if(
	[上月销售额]>0, 
	divide([销售额]-[上月销售额],[上月销售额]),
	if(and([销售额]>0,[上月销售额]=0),1,balnk(),
	)

在这里插入图片描述
dateadd函数生成日期

DATEADD(<dates>,<number_of_intervals>,<interval>)  

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值