[函数大全] STARTOFMONTH

  [复制链接]
查看132184 | 回复132 | 2021-2-21 23:16:34 | 显示全部楼层 |阅读模式
返回当前月份的第一天。

语法
  1. STARTOFMONTH ( <日期列> )
复制代码
参数属性描述
日期列包含日期的列

返回值

表 只有一列的表

备注

<日期列>参数可以是以下任一项 :


  • 对日期/时间列的引用。只有在这种情况下才应用上下文转换,因为列引用被替换为CALCULATETABLE ( DISTINCT ( <日期列> ) )
  • 返回单列日期/时间值的表表达式
  • 定义日期/时间值的单列表的布尔表达式


STARTOFMONTH 和下面的表达式得到相同的结果,但计算效率更高:
  1. VAR FirstDateVisible =
  2.     CALCULATE ( MIN ( 'Date'[Date] ) )
  3. VAR FirstYearVisible =
  4.     YEAR ( FirstDateVisible )
  5. VAR FirstMonthVisible =
  6.     MONTH ( FirstDateVisible )
  7. VAR DaysInMonth =
  8.     FILTER (
  9.         ALL ( 'Date'[Date] ),
  10.         YEAR ( 'Date'[Date] ) = FirstYearVisible
  11.             && MONTH ( 'Date'[Date] ) = FirstMonthVisible
  12.     )
  13. VAR FirstDayInMonth =
  14.     MINX (
  15.         DaysInMonth,
  16.         'Date'[Date]
  17.     )
  18. VAR Result =
  19.     CALCULATETABLE (
  20.         VALUES ( 'Date'[Date] ),
  21.         'Date'[Date] = FirstDayInMonth
  22.     )
  23. RETURN
  24.     Result
复制代码

STARTOFMONTH 未针对 DirectQuery 进行优化,在计算列和行级别安全性公式中完全不受支持。 但可以在度量值和查询公式中使用,只不过无法保证性能。


示例

下面的示例公式创建一个度量值,此度量值返回当前上下文中月份的第一天:
  1. =STARTOFMONTH(DateTime[DateKey])
复制代码



回复

使用道具 举报

warrior0 | 2021-4-25 19:56:17 | 显示全部楼层
佩服佩服!
回复

使用道具 举报

牧狼 | 2021-8-26 22:09:50 | 显示全部楼层
边撸边过
回复

使用道具 举报

baliuzhan | 2021-9-3 06:06:32 来自手机 | 显示全部楼层
这么强,支持楼主,佩服
回复

使用道具 举报

运奇 | 2021-9-27 11:50:25 来自手机 | 显示全部楼层
看起来不错
回复

使用道具 举报

silvia789 | 2021-10-13 09:26:31 | 显示全部楼层
回个帖子支持一下!
回复

使用道具 举报

dgctzxs | 2021-10-22 15:59:54 | 显示全部楼层
好帖必须得顶起
回复

使用道具 举报

quike111 | 2021-10-26 22:10:01 | 显示全部楼层
看起来不错
回复

使用道具 举报

xuyee0601 | 2021-11-7 07:17:02 来自手机 | 显示全部楼层
呵呵。。。.....
回复

使用道具 举报

新手1 | 2021-11-10 12:58:18 | 显示全部楼层
元芳你怎么看?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则