将秒显示为ddd:hh:mm:ss(MySQL&jsp)

时间:2018-07-30 13:03:24

标签: mysql jsp

我有一个表格(MySQL),其中有一个持续时间(以秒为单位)列

id   asset  name    zone    Duration
1    1234   Fred    2       330364
2    1234   Fred    1       78921
3    1234   Fred    3       2211

我需要能够遍历表(使用sql:select或通过函数或jsp中的某些东西),以便秒变为ddd:hh:mm:ss(天,小时,分钟,秒)。

我在创建表的select语句中使用了SEC_TO_TIME,但是该操作在858小时就用完了,所以我认为它必须是一个单独的函数或其他东西。

最简单的方法是什么,我是新手,所以请提供尽可能多的解释。

问候 拉尔夫

1 个答案:

答案 0 :(得分:-1)

最好的解决方案是将秒转换为语言,该语言将处理显示的值并在那里进行转换。除非没有其他前端,否则不必在数据库层上执行逻辑。

编辑:您想使用javascript,所以这是对JS的建议。

var seconds = 330364;
var duration = moment.duration(seconds, 'seconds');
var formatted = duration.format("D hh:mm:ss");
console.log(formatted); // 3 19:46:04
<!-- Moment.js library -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

<!-- moment-duration-format plugin -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-duration-format/1.3.0/moment-duration-format.min.js"></script>