将时间戳转换为HH:MM:SS格式

本文关键字:MM 格式 SS HH 时间戳 转换 | 更新日期: 2023-09-27 17:59:16

嗨,我正在处理Oracle存储过程,在该过程中我减去两个日期,并返回类似于+00 hh:mm:ss.ff格式的Timespan。现在我只想在存储过程或asp.net应用程序中访问hh:mm:ss格式。当我试图返回时间跨度时,这是我减去后得到的结果,我找不到读取它的方法,因为它不是日期时间。我想从数据库端或前端端以HH:MM:SS格式显示时间跨度。我尝试使用以下方法。

 1)TO_DATE( TO_CHAR(((MAX(COMPLETED_DATE)-MAX(REQUEST_DATE))*24),'YYYY-MON-DD HH24:MI:SS'),'YYYY-MON-DD HH24:MI:SS') 

以便稍后我可以从中提取hh:mm:ss,但这是抛出错误

 2)  TO_CHAR(((MAX(S.COMPLETED_DATE)-MAX(S.REQUEST_DATE))*24))

它以+00 hh:mm:ss.ff格式返回时间,我无法从此提取hh:mm:ss

将时间戳转换为HH:MM:SS格式

两个日期的差异不是DateTime,而是TimeSpan。你不应该用字符串来表达这一点。

应该能够返回:

MAX(S.COMPLETED_DATE)-MAX(S.REQUEST_DATE)

结果应该是C#中的TimeSpan类型。然后,您可以使用自定义TimeSpan格式字符串以您想要的任何格式输出。

如果出于某种原因,这不起作用,可以考虑从Oracle中分别返回这两个日期,然后在C#代码中减去它们。