【问题标题】:Converting TimeStamp to HH:MM:SS format将时间戳转换为 HH:MM:SS 格式
【发布时间】:2014-04-21 14:38:57
【问题描述】:

您好,我正在处理 Oracle 存储过程,其中我减去两个日期并返回时间跨度,如 +00 hh:mm:ss.ff 格式现在我只想访问 HH:MM:SS 格式存储过程或在 asp.net 应用程序中。当我尝试按原样返回时间跨度时,这是减法后得到的结果,我找不到读取它的方法,因为它不是日期时间。我想从数据库端或前端以 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

【问题讨论】:

    标签: c# asp.net oracle datetime timespan


    【解决方案1】:

    两个日期的差不是DateTime,而是TimeSpan。您不需要使用字符串来传达它。

    应该能够返回:

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

    结果应该在 C# 中输入 TimeSpan 类型。然后您可以使用custom TimeSpan format string 以您想要的任何格式输出。

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

    【讨论】:

      猜你喜欢
      • 2012-12-30
      • 1970-01-01
      • 1970-01-01
      • 2011-06-20
      • 2013-04-18
      • 1970-01-01
      • 2011-06-17
      相关资源
      最近更新 更多