4

我们有一个日期列,我想在 Power BI 中以 YYYY Q(季度数字)格式创建一个新列。

例如,如果日期是 2017 年 11 月 21 日,则新列应存储 2017 年第四季度。稍后我们想使用新计算的列作为我们报告的切片器。

实现这一目标的最佳方法是什么?
例如,请在下面找到示例数据。
2018 年 11 月 21 日将是 2018 年第四季度的新列
10/12/2017 将是 2017 年第四季度的新列
2016 年 2 月 11 日将是 2016 年第一季度的新列2018 年 7 月 10 日
将是 2018 年第三季度的新列

4

2 回答 2

2

您应该可以使用FORMATwhere TableName[ColumnName]is the table column where your dates are来做到这一点:

= FORMAT(TableName[ColumnName], "yyyy \Qq")

这里 the\是一个转义字符,所以它知道按Q字面意思解释,yyyy是年份,q是季度数。

于 2018-08-06T17:52:45.827 回答
0

我不相信 Bower BI 带有预设的 Quarter 切片器。我的组织实现这一点的方法是创建三个月增量的汇总。基本上建立我们自己的季度变量并使用它。

我们的计算字段相当于

CALCULATE(SUM('TableName'[TargetColumn]),
 FILTER(
    ALL( 'TableName'[YearMonthNumber] ),
         'TableName'[YearMonthNumber] 
          = EARLIER ( 'TableName'[YearMonthNumber] ) – 3)

它将前三个月的指定列的值相加。使用一些 IF-ELSE 语句,您可以将其修改为其他时期,而不是最近的三个月时间跨度。您可以参考这篇 Dax Pattern 文章了解更多信息

坦率地说,如果您有权访问数据,则可能更容易创建一行,该行是您想要的时间段内其他列的总和,而不是在您的数据服务器中而不是 Power BI。此外,通过在服务器中对其进行格式化,您可以将其传递给 Power BI 以外的其他服务。

于 2018-08-06T15:30:51.200 回答