Power Bi中如何将秒数转换为hh:mm格式?
How to convert seconds into hh:mm format in Power Bi?
在 Power Bi 中,我有一个 table,其中用户在几秒钟内包含 Name
和 TimeSpent
。
我想将所有用户花费的总秒数转换为持续时间格式 (hh:mm)
当我从数据库查询中为每个用户获取 hh:mm 格式的秒数时,值会像这样 12:63
等出现。将这些值导入 power bi 后,我尝试设置它的数据类型为 DateTime
格式,但 power bi 显示错误,指出它不是有效值。如果我将列的数据类型设置为 string
,则字符串不会相加。
理想的实现方式是什么?
您可以尝试以下DAX:
HHMMSS =
INT(Table[TimeSpent] / 3600) & ":" &
RIGHT("0" & INT((Table[TimeSpent] - INT(Table[TimeSpent] / 3600) * 3600) / 60), 2) & ":" &
RIGHT("0" & MOD(Table[TimeSpent], 3600), 2)
有一个类似的问题,但对于 D:HH:MM:SS,下面的代码是否有用。
DurTime (meas) =
VAR vDur = <<<duration in CALCULATE(SUM(seconds)) >>>
RETURN INT(vDur/86400) & ":" & //Days
RIGHT("0" & INT(MOD(vDur/3600,24)),2) & ":" & //Hours
RIGHT("0" & INT(MOD(vDur/60,60)),2) & ":" & //Minutes
RIGHT("0" & INT(MOD(vDur,60)),2) //Seconds
这是我在 PBI 中使用的更好的公式:
HHMMSS = FORMAT(TIME(int(Table[TimeSpent] / 3600); int(mod(Table[TimeSpent]; 3600) / 60);int(mod(mod(Table[TimeSpent]; 3600); 60))); "HH:mm:ss")
DAX代码:
= TIME(0,0,SUM('Table'[Timespent]))
然后单击建模选项卡并选择格式 - 日期时间并选择适当的格式。
你可以一行解决这个问题:
measure = FORMAT(TIME(0;0;tableNAME[your_column]);"HH:mm:ss")
我想要一个易于阅读的 Power BI 度量,如果有用,请在下面编写代码。
HH:MM =
VAR TotalDuration = SUM(tableNAME[your_column] ) //if you use a measure just leave the SUM part out
VAR TotalHours = TRUNC (TotalDuration/3600)
VAR Min_ = FORMAT(TRUNC(TotalDuration - TotalHours * 3600),"00")
RETURN
TotalHours & ":" & Min_
解决方案取自本题的最高答案
在 Power Bi 中,我有一个 table,其中用户在几秒钟内包含 Name
和 TimeSpent
。
我想将所有用户花费的总秒数转换为持续时间格式 (hh:mm)
当我从数据库查询中为每个用户获取 hh:mm 格式的秒数时,值会像这样 12:63
等出现。将这些值导入 power bi 后,我尝试设置它的数据类型为 DateTime
格式,但 power bi 显示错误,指出它不是有效值。如果我将列的数据类型设置为 string
,则字符串不会相加。
理想的实现方式是什么?
您可以尝试以下DAX:
HHMMSS =
INT(Table[TimeSpent] / 3600) & ":" &
RIGHT("0" & INT((Table[TimeSpent] - INT(Table[TimeSpent] / 3600) * 3600) / 60), 2) & ":" &
RIGHT("0" & MOD(Table[TimeSpent], 3600), 2)
有一个类似的问题,但对于 D:HH:MM:SS,下面的代码是否有用。
DurTime (meas) =
VAR vDur = <<<duration in CALCULATE(SUM(seconds)) >>>
RETURN INT(vDur/86400) & ":" & //Days
RIGHT("0" & INT(MOD(vDur/3600,24)),2) & ":" & //Hours
RIGHT("0" & INT(MOD(vDur/60,60)),2) & ":" & //Minutes
RIGHT("0" & INT(MOD(vDur,60)),2) //Seconds
这是我在 PBI 中使用的更好的公式:
HHMMSS = FORMAT(TIME(int(Table[TimeSpent] / 3600); int(mod(Table[TimeSpent]; 3600) / 60);int(mod(mod(Table[TimeSpent]; 3600); 60))); "HH:mm:ss")
DAX代码:
= TIME(0,0,SUM('Table'[Timespent]))
然后单击建模选项卡并选择格式 - 日期时间并选择适当的格式。
你可以一行解决这个问题:
measure = FORMAT(TIME(0;0;tableNAME[your_column]);"HH:mm:ss")
我想要一个易于阅读的 Power BI 度量,如果有用,请在下面编写代码。
HH:MM =
VAR TotalDuration = SUM(tableNAME[your_column] ) //if you use a measure just leave the SUM part out
VAR TotalHours = TRUNC (TotalDuration/3600)
VAR Min_ = FORMAT(TRUNC(TotalDuration - TotalHours * 3600),"00")
RETURN
TotalHours & ":" & Min_
解决方案取自本题的最高答案