将 SQL 时间格式更改为 HH31:MI:SS
Change SQL time format to HH31:MI:SS
我想插入 HH31:MI:SS
格式的时间值,而不是典型的 HH24:MI:SS
。这种格式不是我的,GTFS 允许超过 24 小时。
例如,
insert into stop_times values((to_date('28:20:02", "HH31:MI:SS")),
(to_date('31:02:25", "HH31:MI:SS)));
但是,我收到一条错误消息:date format not recognized
。
是否可以将默认格式 (HH24:MI:SS
) 更改为 HH31:MI:SS
?
我使用 SQL 开发人员。
试试这个:不确定您期望的输出是什么:
您给定的时间 31:02:25
变为 111745
秒。现在将这些秒数转换为以下内容:
SELECT
TO_CHAR(TRUNC(x/3600),'FM9900') || ':' ||
TO_CHAR(TRUNC(MOD(x,3600)/60),'FM00') || ':' ||
TO_CHAR(MOD(x,60),'FM00')
FROM DUAL
其中 x
是秒数
TO_CHAR应该可以处理9999小时!
我想插入 HH31:MI:SS
格式的时间值,而不是典型的 HH24:MI:SS
。这种格式不是我的,GTFS 允许超过 24 小时。
例如,
insert into stop_times values((to_date('28:20:02", "HH31:MI:SS")),
(to_date('31:02:25", "HH31:MI:SS)));
但是,我收到一条错误消息:date format not recognized
。
是否可以将默认格式 (HH24:MI:SS
) 更改为 HH31:MI:SS
?
我使用 SQL 开发人员。
试试这个:不确定您期望的输出是什么:
您给定的时间 31:02:25
变为 111745
秒。现在将这些秒数转换为以下内容:
SELECT
TO_CHAR(TRUNC(x/3600),'FM9900') || ':' ||
TO_CHAR(TRUNC(MOD(x,3600)/60),'FM00') || ':' ||
TO_CHAR(MOD(x,60),'FM00')
FROM DUAL
其中 x
是秒数
TO_CHAR应该可以处理9999小时!