6. DAX 时间函数-- DATE 日期--FIRSTDATE \LASTDATE\DATESMTD\DATESQTD\DATESYTD

函数名目的语法返回值
FIRSTDATE 返回指定日期列在当前上下文中的第一个非空日期。FIRSTDATE ( <日期列> )
表 包含具有日期值的单列和单行的表。
LASTDATE返回指定日期列在当前上下文中的最后一个非空日期。LASTDATE ( <日期列> )
表 包含具有日期值的单列和单行的表。
DATESMTD返回一个表,其中包含当前筛选上下文中该月份至今的所有日期。DATESMTD ( <日期列> )表 包含日期值的单列表
DATESQTD返回一个表,其中包含当前筛选上下文中该季度至今的所有日期。DATESQTD ( <日期列> )表 包含日期值的单列表
DATESYTD返回一个表,其中包含当前筛选上下文中该年份至今的所有日期。DATESYTD ( <日期列> , [年截止日期] )表 包含日期值的单列表

一:准备测试数据

我喜欢用数据说话,还是使用之前的测试数据,这套数据横跨 4 年,从 2024 年到 2026 年,每天都不停歇,最早日期是 2024-02-01,最晚日期是 2026-07-11,销售额第一天是 1,第二天是 2,依次到2026-07-11 是 892。

二: 实践出真知

 建议先看看前面几篇文章

3. DAX 时间函数-- DATE 日期--一生二,二生三,三生万物_dax date函数-CSDN博客

4. DAX 时间函数-- DATE 日期--START/END OF MONTH/QUARTER/YEAR-CSDN博客

5. DAX 时间函数-- DATE 日期--PREVIOUS/NEXT DAY/MONTH/QUARTER/YEAR-CSDN博客

1) FIRSTDATE 和 LASTDATE 函数
FIRSTDATE 返回指定日期列在当前上下文中的第一个非空日期。FIRSTDATE ( <日期列> )
表 包含具有日期值的单列和单行的表。
LASTDATE返回指定日期列在当前上下文中的最后一个非空日期。LASTDATE ( <日期列> )
表 包含具有日期值的单列和单行的表。

这两个函数很明显,一看就是配套使用。从微软的官方解释来看,也非常简单,我们试试到底是不是这样。

我们准备一下:

FIRSTDATE = FIRSTDATE('日期表'[Date])
LASTDATE = LASTDATE('日期表'[Date])
FIRSTDATE CAL = CALCULATE(SUM('测试数据'[销售额]),FIRSTDATE('日期表'[Date]))
LASTDATE CAL = CALCULATE(SUM('测试数据'[销售额]),LASTDATE('日期表'[Date]))

从上图可以看出,FIRSTDATE 、LASTDATE适用于单独找出上下文的日期值,如果和 CALCULATE 系列函数使用,那么它返回的其实是上下文中的所有非空值,而不是字面意思上的第一个、最后一个!

为了验证这一观念,我新写了一个度量指标,然后在过滤器上移动数值范围,可以验证我的观点。

SUM 销售额 = SUM('测试数据'[销售额]) 

2)DATESMTD、DATESQTD、DATESYTD
DATESMTD返回一个表,其中包含当前筛选上下文中该月份至今的所有日期。DATESMTD ( <日期列> )表 包含日期值的单列表
DATESQTD返回一个表,其中包含当前筛选上下文中该季度至今的所有日期。DATESQTD ( <日期列> )表 包含日期值的单列表
DATESYTD返回一个表,其中包含当前筛选上下文中该年份至今的所有日期。DATESYTD ( <日期列> , [年截止日期] )表 包含日期值的单列表

这三个函数说得很清楚,直接就是返回“表 包含日期值的单列表”。 

 我先试试创建新表,此刻是 2024-04-18,让我们看看结果。

DATESMTD 表 = DATESMTD('测试数据'[Date]) 
DATESQTD 表 = DATESQTD('测试数据'[Date]) 
DATESYTD 表 = DATESYTD('测试数据'[Date]) 

根据上面三个图,可以看出使用 DATESMTD、DATESQTD、DATESYTD 三个函数创建新表时候,是依次创建出该月份至今该季度至今该年至今的日期列表。但是请注意,所谓的该月份,是上下文数据中最靠后的数据,而不是当前数据!正确!

然后我们还可以配套 CALCULATE 使用:

DATESMTD = CALCULATE(SUM('测试数据'[销售额]),DATESMTD('测试数据'[Date]))
DATESQTD = CALCULATE(SUM('测试数据'[销售额]),DATESQTD('测试数据'[Date]))
DATESYTD = CALCULATE(SUM('测试数据'[销售额]),DATESYTD('测试数据'[Date]))

在移动过滤器时候,就会发现移动左值对结果是没有影响的,只有移动右值才有影响。这也进一步证明了前面的结论“使用 DATESMTD、DATESQTD、DATESYTD 三个函数创建新表时候,是依次创建出该月份至今该季度至今该年至今的日期列表。但是请注意,所谓的该月份,是上下文数据中最靠后的数据,而不是当前数据!

~~~~~~~~~~~~博客写得好累,为了攒分,请给个点评,哪怕一个赞字,谢谢同学!~~~~~~~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/641802.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HCIP【路由过滤、路由引入实验】

目录 实验要求&#xff1a; 实验拓扑图&#xff1a; 实验思路&#xff1a; 实验步骤&#xff1a; 一、配IP地址 二、在相应的设备上配置RIP协议和OSPF协议 三、路由引入 四、路由过滤 五、配置静默接口 实验要求&#xff1a; 1、按照图示配置 IP 地址&#xff0c;R1&a…

nodejs切换

1.卸载nodejs 2.下载nvm工具 3.检查nvm安装情况 nvm -v3.nvm 安装命令 nvm install 10.16.34.查询nodejs版本 nvm list5.切换nodejs版本 nvm use 10.16.3

文心一言 VS 讯飞星火 VS chatgpt (243)-- 算法导论18.1 1题

一、B树中为什么不允许最小度数 t1&#xff1f;如果要写代码&#xff0c;请用go语言。 文心一言&#xff1a; 在B树中不允许最小度数 t1 的主要原因在于这样会导致树的结构退化为链表&#xff0c;失去了B树作为平衡多路搜索树的优势。当 t1 时&#xff0c;每个非根节点将只能…

什么是仪器校准报告?

在科学实验和工业生产中&#xff0c;仪器是一种非常重要的辅助工具&#xff0c;无论是测量数据、控制实验进程还是保证产品质量&#xff0c;仪器都发挥着至关重要的作用。为了确保仪器的准确性和稳定性&#xff0c;仪器校准报告这一概念应运而生。本文给大家详细介绍仪器校准报…

用于自动化机器陀螺仪传感器:XV7081BB

介绍一款用于自动化机器的数字输出型陀螺仪传感器XV7081BB。这款新推出的陀螺仪XV7081BB到底有什么魅力呢?我们可以用常用款用于智能割草机的XV7011BB作对比:XV7081BB提供16位或24位分辨率的角速率输出速率范围为400s。而XV7011BB采用16位角速度输出&#xff0c;检测范围为100…

YOLC: You Only Look Clusters for Tiny Object Detection in Aerial Images

摘要 由于以下因素,从航拍图像中检测物体面临着重大挑战:1)航拍图像通常具有非常大的尺寸,通常有数百万甚至数亿像素,而计算资源有限。2)物体尺寸较小导致有效信息不足,无法进行有效检测。3)物体分布不均匀导致计算资源浪费。为了解决这些问题,我们提出YOLC(You Onl…

设计模式-模板模式

模板设计模式 定义 在模板模式中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。 简单来说,有多个子类共有的方法,且逻辑相同,可以考虑作为模板方法。 模板的价值就在于骨架的定义,骨架内部将问题…

基于springboot实现中药实验管理系统设计项目【项目源码+论文说明】

基于springboot实现中药实验管理系统设计演示 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了中药实验管理系统的开发全过程。通过分析中药实验管理系统管理的不足&#xff0c;创建了一个计算机管理中药实验管…

关于YOLO模型架构中的strides

在Ultralytics YOLO模型架构中&#xff0c;m.stride是一个非常关键的属性&#xff0c;用于描述网络在不同尺度&#xff08;scale&#xff09;上的空间压缩程度。解释m.stride的原理之前&#xff0c;我们首先要了解深度学习中卷积神经网络&#xff08;CNN&#xff09;的基本工作…

如何在window系统中安装Mysql

先简单来说说MySQL是什么&#xff1f; MySQL 是最流行的关系型数据库管理系统&#xff0c;在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System&#xff1a;关系数据库管理系统)应用软件之一。 MySQL 由瑞典 MySQL AB 公司开发&#xff0c;目前属于…

【oceanbase】安装ocp,ocp部署oceanbase

https://www.oceanbase.com/docs/common-ocp-1000000000584989 资源 iphostnamecpumem组件192.168.0.71obnode-000-071816oceanbase-ce192.168.0.72obnode-000-072816oceanbase-ce192.168.0.73obnode-000-073816oceanbase-ce192.168.0.74obproxy-000-07424obproxy-ce192.168.0…

基于SpringBoot+Vue的企业资产管理系统设计与实现

1、系统演示视频&#xff08;演示视频&#xff09; 2、需要请联系