【问题标题】:How to convert seconds to day time如何将秒转换为白天
【发布时间】:2015-09-08 14:38:35
【问题描述】:

例子:

秒 = 272920

我的预期输出 = 3Days hours:minutes:seconds

我正在尝试将秒数转换为白天时间。

现在我正在使用这些查询将其转换为时间:

SELECT CONVERT(SEC_TO_TIME(Seconds), CHAR) FROM table;

我的输出是 75:48:40 --------> Format(hh:mm:ss)

但我的期望值是天、小时、分钟、秒

.

任何建议都会有很大帮助,在此先感谢..

【问题讨论】:

    标签: mysql


    【解决方案1】:

    试试;

    SELECT 
    CONCAT(
        FLOOR(HOUR(SEC_TO_TIME(272920)) / 24), ' days ',
        MOD(HOUR(SEC_TO_TIME(272920)), 24), 'H:',
        MINUTE(SEC_TO_TIME(272920)), 'Min:',
        second(SEC_TO_TIME(272920)), 'Sec'
    )
    

    【讨论】:

      【解决方案2】:
      DECLARE @s INT = 139905;
      
      SELECT 
          CONVERT(VARCHAR(12), @s /60/60/24)   + ' Day(s), ' 
        + CONVERT(VARCHAR(12), @s /60/60 % 24) + ' Hour(s), '
        + CONVERT(VARCHAR(2),  @s /60 % 60)    + ' Minute(s), ' 
        + CONVERT(VARCHAR(2),  @s % 60)        + ' Second(s).';
      

      欲了解更多详情,请查看以下链接SQL Server Convert seconds to Days & hours

      【讨论】:

      • 问题被标记为 My SQL 而不是 SQL Server
      【解决方案3】:

      通过一些基本的算术,使用模数和整数除法运算符的组合:

      SELECT CONCAT(
          seconds DIV (60 * 60 * 24),
          ' Days, ',
          seconds DIV (60 * 60) % 24,
          ':',
          seconds DIV 60 % 60,
          ':',
          seconds % 60) FROM table;
      

      您的示例输入值为272920

      SELECT CONCAT(
          272920 DIV (60 * 60 * 24),
          ' Days, ',
          272920 DIV (60 * 60) % 24,
          ':',
          272920 DIV 60 % 60,
          ':',
          272920 % 60);
      

      这将产生以下输出:

      3 Days, 3:48:40
      

      【讨论】:

        猜你喜欢
        • 2014-01-03
        • 2011-01-26
        • 2015-02-03
        • 2013-09-22
        • 2021-12-04
        • 1970-01-01
        • 2012-01-06
        • 2017-05-10
        相关资源
        最近更新 更多