如何将 4 位数年份格式化为 DAX 中的日期?

How to format a 4 digit year as a date in DAX?

我从 SQL 查询中将数据提取到 Power BI,其中 returns 只有其中一列中的订单年份。在 Power BI 中,我将该列格式化为“数据类型日期”和“日期时间格式 2001(yyyy)”,但是当我将该列拉入 Power BI 中的 table 时,它显然是在计算 2020 和 2021 作为数字从 1900 年 1 月 1 日开始的天数(如 excel),因为在将此列插入视觉对象时,两者的年份都显示为 1905 年,而不是 2020 年和 2021 年。

如何将此列的格式设置为 2020 年和 2021 年?

谢谢,

可以在数据源中转换,也可以在模型中用DAX加一个custom column in Power Query with M, or a calculated column。如果您的数据不是太多,那么在何处执行此操作并不重要,但一般建议是尽可能靠近数据源执行此操作(即,如果可以,将其添加到您的查询中,或者如果您无法添加计算列)。

数据源选项在你的查询中需要一个列,可以用这样的表达式添加(这个使用DATEFROMPARTST-SQL命令,如果你使用其他数据库,你将不得不改变它):

DATEFROMPARTS(ExistingYearOnlyColumn, 1, 1)

或者点击Transform data打开Power Query Editor然后点击Add Column -> Custom Column:

并使用 #date 创建日期:

最后一个选项是在 DAX 中创建计算列,方法是右键单击 table 并选择 New column:

并在如下表达式中使用 DATE DAX 函数:

DateColumn = DATE([ExistingYearOnlyColumn], 1, 1)