使用带有格式的 day() 公式时错误的一天 - PowerBI
Wrong day when using day()-formula with format - PowerBI
我试图从格式为 yyyy mm dd
的日期范围中找出工作日,即周一、周二、周三等
我试过使用公式format(day(Date Table),"ddd")
,但是工作日是错误的。在我的示例中,2020.01.01 的输出给出了星期日,但应该是星期三。
我认为你的公式有误:
而不是
format(day(Date Table),"ddd")
使用
format(<Target Table>[<date column>],"ddd")
即省略 DAX DAY 调用。这导致月份中的第几天 (1..31) 被传递给格式函数。
当您在 DAX 中使用 DAY 函数时,它 returns 一个月中的第几天(1 到 31)。
因此 DAY ( DATE ( 2020, 1, 1) ) = 1
这意味着您正在尝试将数字 1
格式化为日期。当被视为日期时,整数被解释为自 1899/12/30 以来的天数,因此 1
对应于 1899/12/31,恰好是星期日。因此 FORMAT(1, "ddd") = "Sun"
.
没有理由让 DAY 参与进来。你可以简单地写
Day = FORMAT ( 'Calendar'[Date], "ddd" )
我试图从格式为 yyyy mm dd
的日期范围中找出工作日,即周一、周二、周三等我试过使用公式format(day(Date Table),"ddd")
,但是工作日是错误的。在我的示例中,2020.01.01 的输出给出了星期日,但应该是星期三。
我认为你的公式有误:
而不是
format(day(Date Table),"ddd")
使用
format(<Target Table>[<date column>],"ddd")
即省略 DAX DAY 调用。这导致月份中的第几天 (1..31) 被传递给格式函数。
当您在 DAX 中使用 DAY 函数时,它 returns 一个月中的第几天(1 到 31)。
因此 DAY ( DATE ( 2020, 1, 1) ) = 1
这意味着您正在尝试将数字 1
格式化为日期。当被视为日期时,整数被解释为自 1899/12/30 以来的天数,因此 1
对应于 1899/12/31,恰好是星期日。因此 FORMAT(1, "ddd") = "Sun"
.
没有理由让 DAY 参与进来。你可以简单地写
Day = FORMAT ( 'Calendar'[Date], "ddd" )