【发布时间】:2016-10-31 00:33:29
【问题描述】:
您好,我想显示两个日期之间的 SQL 差异:
* END DATE = dt_termino / now()
* 开始日期 = dt_inicio
我有一个要在 CSV 中编写的函数...但在我的 csv 输出中,例如:
id_task_tarefa | dt_inicio | dt_termino | sum
211 | 2016-01-25 10:40:25 | 2016-01-27 08:51:02 | 01 22:10:37
210 | 2016-01-25 10:40:29 | 2016-01-27 08:50:21 | 01 22:09:52
我需要在 Excel 中输出的格式 [h]:mm:ss;@ 像这样
id_task_tarefa | dt_inicio | dt_termino | sum
211 | 2016-01-25 10:40:25 | 2016-01-27 08:51:02 | 46:10:37
210 | 2016-01-25 10:40:29 | 2016-01-27 08:50:21 | 46:09:52
这是我的 SQL:
SELECT id_task_tarefa,
dt_inicio,
dt_termino,
to_char(COALESCE(dt_termino::timestamp, now()::timestamp)
- dt_inicio::timestamp,'DD HH24:MI:SS')
FROM crm.task_interacao
【问题讨论】:
-
考虑
extract(epoch from timestamp1 - timestamp2)返回两个时间戳之间的秒数。然后您可以使用简单的公式将其转换为小时、分钟和秒:x::int / (60*60) as h, x::int % (60*60) / 60 as m, x::int % 60 as s
标签: postgresql csv