月份名称在Power Bi中使用格式功能无法正常工作

时间:2019-04-16 07:25:51

标签: powerbi dax powerbi-desktop

我已使用以下方法获取月份的陈述日期

multiemp[Day] - WEEKDAY(multiemp[Day],2)

例如,如果我在2018年5月22日与我们约会后,使用上述查询后得到了预期的结果,即2018年5月20日

现在我试图通过使用上面的查询和格式化功能来获取月份名称

format(month(multiemp[Day] - WEEKDAY(multiemp[Day],2)),"mmm")

没有预期结果,而不是可能在一月填充结果。

用下个月的功能验证预期结果时,即5

month(multiemp[Day] - WEEKDAY(multiemp[Day],2)

但仅在将月份号更改为月份名称时出现问题

请在下面找到:

enter image description here

使用的公式

weekstartday = multiemp[Day] - WEEKDAY(multiemp[Day],2)
weekstartday_month = month(multiemp[weekstartday])
Month_name = format(multiemp[weekstartday_month],"mmm")
another_ans = format(dateadd(multiemp[Day],-weekday(multiemp[Day],2),day),"mmm")
another_answer_date = dateadd(multiemp[Day],-weekday(multiemp[Day],2),day)

编辑:第二天 将列的数据类型修改为日期时间/时区。

enter image description here

刷新后数据保持不变

enter image description here

找到了解决方案

解决方案1:

mnname = format(multiemp[weekstartday].[Date],"mmm")

解决方案2:

Month_name = format(date(YEAR(multiemp[weekstartday]),MONTH(multiemp[weekstartday]),day(multiemp[weekstartday])),"mmm")

预先感谢

3 个答案:

答案 0 :(得分:3)

设置列格式,而不是重复列DAX语句。

Column = FORMAT(*nameOfYourStartOfWeekColumn*,"mmm")

enter image description here

答案 1 :(得分:1)

由于FORMAT(...,"MMM")FORMAT(...,"MMMM")date类型和非numeric类型作为参数,因此请尝试

format(dateadd(multiemp[Day],-weekday(multiemp[Day],2),day),"MMM")

如果您希望将一周的开始日期设为星期一,那么

format(dateadd(multiemp[Day],-weekday(multiemp[Day],3),day),"MMM")

编辑

验证日期列是date还是date\time类型。

Date_data_type

答案 2 :(得分:0)

解决方案1:

mnname = format(multiemp[weekstartday].[Date],"mmm")

解决方案2:

Month_name = format(date(YEAR(multiemp[weekstartday]),MONTH(multiemp[weekstartday]),day(multiemp[weekstartday])),"mmm")