【发布时间】:2017-03-14 08:49:15
【问题描述】:
我使用 concat 语句在我的 postgresql 数据库中选择开始和结束时间。
代码:
SELECT
CASE
WHEN d.id = 4 THEN (SELECT CONCAT (i.start_time, i.end_time) FROM rdf_date_time i, rdf_condition_dt h WHERE ...)
ELSE ''
END as timedomain
FROM ..
JOIN ...;
开始时间:0500(凌晨 5 点) 结束时间:1300(下午 13 点)
列时域看起来像:5002200
我将这种格式作为结果:[(h5){8}] = [(start_time) {duration until end_time}] 我怎样才能这样转换它?
【问题讨论】:
-
您必须以正确的模式格式化时间值..但这取决于数据库..所以标记您的数据库模型
-
这不起作用,因为我的数据库中的 end_time 和 start_time 列是字符。
-
(i.end_time::time-i.start_time::time)then?.. 如果它们是整数,(i.end_time::text::time-i.start_time::text::time) -
它被写入了类型时间的无效语法:“500”
-
我可以转换像'500'这样的时间格式的值吗?
标签: sql postgresql concat