C# 将时间戳转换为HH:MM:SS格式
您好,我正在处理Oracle存储过程,其中我减去了两个日期,并返回Timespan,如+00 hh:mm:ss.ff格式。现在我只想在存储过程或asp.net应用程序中访问hh:mm:ss格式。当我试图返回timespan时,它是我减法后得到的结果,我找不到读取它的方法,因为它不是日期时间。我想以HH:MM:SS格式从数据库侧或前端显示时间跨度。我试着使用以下方法C# 将时间戳转换为HH:MM:SS格式,c#,asp.net,oracle,datetime,timespan,C#,Asp.net,Oracle,Datetime,Timespan,您好,我正在处理Oracle存储过程,其中我减去了两个日期,并返回Timespan,如+00 hh:mm:ss.ff格式。现在我只想在存储过程或asp.net应用程序中访问hh:mm:ss格式。当我试图返回timespan时,它是我减法后得到的结果,我找不到读取它的方法,因为它不是日期时间。我想以HH:MM:SS格式从数据库侧或前端显示时间跨度。我试着使用以下方法 1)TO_DATE( TO_CHAR(((MAX(COMPLETED_DATE)-MAX(REQUEST_DATE))*24),'
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两个日期的差异不是日期时间,而是时间跨度。你不需要用字符串来表达 您应该能够返回:
MAX(S.COMPLETED_DATE)-MAX(S.REQUEST_DATE)
结果应该以TimeSpan
的形式输入C。然后,您可以使用一个用于以您想要的任何格式输出的
如果由于某种原因不起作用,请考虑将两个日期分别从甲骨文返回,然后在C代码中减去它们。