【问题标题】:Measure the time difference/run time between Start and End in Power BI在 Power BI 中测量开始和结束之间的时间差/运行时间
【发布时间】:2021-07-08 07:51:56
【问题描述】:

我的本​​地主机上有一个 SQL 数据仓库。数据通过 SSIS 中的 ETL 项目加载。 在 DWH 中,我有一个记录表,每次运行 etl 进程时都会归档该表。然后在 power bi 的仪表板中报告日志记录表。 在日志记录中,我有每个运行的 etl 进程的 StartTime 和 EndTime(在日期时间中)。有些行没有 EndTime,因为 ETL 在那里失败。

现在我正在尝试在 power bi 中进行测量,以显示每个进程的运行时间(以秒为单位)。 我尝试了以下方法,但它不起作用:

TimeDiff = DATEDIFF(('Logging view'[StartTime]),('Logging view'[EndTime]), SECOND)


TimeDiff = Duration.TotalSeconds(('Logging view'[EndTime])-('Logging view'[StartTime]))

有人知道如何在这里测量运行时间吗?

【问题讨论】:

  • “不工作”:这是什么意思?

标签: sql powerbi etl data-analysis


【解决方案1】:

当您使用 DATEDIFF 函数时,它需要两个日期,如果您在度量中这样使用它,您将传递两列。

我的建议是在你的 power bi 模型中创建一个计算列并使用该公式:

TimeDiffSeconds = DATEDIFF(('Logging view'[StartTime]),('Logging view'[EndTime]), SECOND)

然后你的度量可以是TimeDiffSeconds的总和

TimeDiff = SUM('Logging view'[TimeDiffSeconds]

如果您不想创建计算列,则需要更改度量以只给您一个日期,而不是一列,例如:

TimeDiff = DATEDIFF(MIN('Logging view'[StartTime]),MAX('Logging view'[EndTime]), SECOND)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-07
    • 2020-04-28
    • 2021-04-10
    • 2011-07-04
    • 2013-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多