gpt4 book ai didi

sqlite - 将时间差异显示为 HH :MM:SS between two datetimes in SQLite

转载 作者:行者123 更新时间:2023-12-05 03:53:03 26 4
gpt4 key购买 nike

我有两个不同的日期时间:2020-05-18 12:30:012020-05-17 13:00:00
我想以 HH:MM:SS 格式显示它们之间的时差,即 23:30:01

如果差异大于 24 小时,比方说 28 小时 12 分 45 秒,它将显示为 28:12:45

我如何在 SQLite 中执行此操作?

最佳答案

SQLite 支持有限数量的日期时间操作函数。
其中一个函数是 strftime(),和

strftime('%s', somedate)

返回从 '1970-01-01'somedate 的秒数。

使用这个函数,算术计算,字符串填充和连接你可以得到你想要的像这样:

  CASE WHEN ((strftime('%s', date1) - strftime('%s', date2)) / 3600) < 10 THEN '0' ELSE '' END ||
((strftime('%s', date1) - strftime('%s', date2)) / 3600) || ':' ||
SUBSTR('0' || (((strftime('%s', date1) - strftime('%s', date2)) / 60) % 60), -2) || ':' ||
SUBSTR('0' || ((strftime('%s', date1) - strftime('%s', date2)) % 60), -2)

date1date2 替换为您的日期。

查看简化的 demo .

关于sqlite - 将时间差异显示为 HH :MM:SS between two datetimes in SQLite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61877337/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com