我的 SQL 查询仅在答案方面是正确的,但在格式方面却失败了。例如,小时和分钟的转换值为 4 小时 30 分钟...如果我将它与“:”(冒号是小时和分钟的正常分隔符)连接起来,它只会显示为“43”而不是“4:30'.. 再举一个例子,当转换值为 0 小时 59 分钟时,它只显示 '59' 而不是 '0:59'
这是我的 SQL 查询:(XAMPP 控制面板和 phpMyAdmin 作为数据库)
SELECT
TIMESTAMPDIFF(hour,ratedemand_datestart,ratedemand_dateend)
+ ":" +
MOD(TIMESTAMPDIFF(minute,ratedemand_datestart,ratedemand_dateend),60) as 'Time Left'
FROM `ratedemand`
最佳答案
数字的前导零通常相连。您可以使用 LPad()
函数解决此问题。
SELECT
concat(
LPad(TIMESTAMPDIFF(hour,ratedemand_datestart,ratedemand_dateend), 2, 0)
, ":"
, LPad(MOD(TIMESTAMPDIFF(minute,ratedemand_datestart,ratedemand_dateend),60), 2, 0)
)as 'Time Left'
...
关于mysql - TIMESTAMPDIFF 格式转换(小时和分钟),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47401903/