You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用DAX在PowerBI中按日期聚合Jira工单状态计数并可视化?

别担心,这个需求在PowerBI里完全可以实现,我给你拆解成几个简单的步骤,跟着做就行:

实现步骤:

1. 先把日期列转成正确的日期类型

首先看你的created列是类似1.2.2020的文本格式,PowerBI可能没法正确识别成日期,这会影响后续的分组统计。你可以这么处理:

  • 切换到数据视图,选中created列
  • 点击顶部的转换数据,进入Power Query编辑器
  • 选中这列,在“转换”选项卡的“数据类型”里选择“日期”;如果自动识别不对,就用自定义列来解析:
    点击“添加列”→“自定义列”,输入公式:
    Date.FromText([created], [Format="d.M.yyyy"])
    
    然后删掉原来的文本列,把新列重命名为created,最后点击关闭并应用。

2. 创建每日状态计数的汇总

这里有两种方式,选哪种都可以:

方式一:直接生成汇总表

如果你想得到一个专门的汇总表(后续可视化更方便),可以在建模选项卡点击新建表,输入下面的DAX公式(记得把你的工单表换成你实际的表名):

每日状态统计 = 
SUMMARIZECOLUMNS(
    '你的工单表'[created],
    '你的工单表'[status],
    "工单数量", COUNT('你的工单表'[Summary])
)

这个表会自动按日期和状态分组,统计每个组合下的工单数量。

方式二:创建单个状态的度量值

如果你不想新建表,也可以为每个状态单独创建度量值,方便后续灵活搭配:

Failed数量 = CALCULATE(COUNT('你的工单表'[Summary]), '你的工单表'[status] = "Failed")
Expected数量 = CALCULATE(COUNT('你的工单表'[Summary]), '你的工单表'[status] = "Expected")
Closed数量 = CALCULATE(COUNT('你的工单表'[Summary]), '你的工单表'[status] = "Closed")

创建方法:点击建模→新建度量值,逐个输入上面的公式即可。

3. 可视化展示(两种风格可选)

风格一:矩阵表格(清晰展示每日各状态数量)

这是最直观的方式,步骤如下:

  • 切换到报表视图,添加一个矩阵可视化组件
  • 把created列拖到矩阵的行区域,status列拖到列区域
  • 把“工单数量”(或者你创建的各个状态度量值)拖到值区域
  • 调整格式:点击矩阵的格式选项卡,找到“行”→“日期格式”,设置为d.M.(这样日期就显示成1.2.这种格式);还可以设置值的显示格式,比如空值显示为0或者隐藏。

风格二:自定义文本格式(完全匹配你要的示例样式)

如果你想要像1.2.:1个Failed / 1个Expected这样的文本展示,可以创建一个拼接文本的度量值:

每日状态汇总文本 = 
VAR 统计Failed = CALCULATE(COUNT('你的工单表'[Summary]), '你的工单表'[status] = "Failed")
VAR 统计Expected = CALCULATE(COUNT('你的工单表'[Summary]), '你的工单表'[status] = "Expected")
VAR 统计Closed = CALCULATE(COUNT('你的工单表'[Summary]), '你的工单表'[status] = "Closed")
VAR 有效统计项 = 
    CONCATENATEX(
        FILTER(
            {
                ("Failed", 统计Failed),
                ("Expected", 统计Expected),
                ("Closed", 统计Closed)
            },
            [Value2] > 0
        ),
        [Value2] & "个" & [Value1],
        " / "
    )
RETURN
    FORMAT(MAX('你的工单表'[created]), "d.M.") & ":" & 有效统计项

然后添加一个表格可视化,把created列拖到行区域,把这个度量值拖到值区域,就能得到你想要的那种文本格式的汇总了。

4. 可选:补全缺失日期(如果需要展示所有日期)

如果有些日期没有工单,你希望这些日期也显示出来(比如显示3.2.:0个Failed / 0个Expected / 0个Closed),可以生成一个完整的日期表:

  • 新建表,输入DAX:
日期表 = CALENDAR(MIN('你的工单表'[created]), MAX('你的工单表'[created]))
  • 然后在数据模型里,把日期表[Date]和你的工单表[created]建立关联(一对多)
  • 后续可视化的时候用日期表[Date]代替原来的created列,这样所有日期都会显示,没有工单的状态计数会显示0。

内容的提问来源于stack exchange,提问作者burnhard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 11:37:52