我想将Candletime转换为oracle日期时间。我正在使用以下查询,但并没有给我几分钟的时间。
select (TO_DATE(SUBSTR (1180723052113000, 2, 12),'YY/MM/DD HH:MI:SS')) from dual;
1180723052113000是烛光时间的样本值,表示 烛光时间格式= CYYMMddhhmmssSSS 哪里 C –世纪,YY –年,MM –月,dd –日,hh –小时,mm –分钟,ss –秒,SSS –毫秒 CYY-(要添加到1900,因为烛光时间以1900为基础)
需要帮助!
答案 0 :(得分:1)
Oracle 11g R2架构设置:
\(.+
查询1 :
SELECT 1 FROM DUAL;
Results :
WITH test_data ( candletime ) AS (
SELECT '1180723052113000' FROM DUAL UNION ALL
SELECT '0180723052113000' FROM DUAL UNION ALL
SELECT '0000228010203456' FROM DUAL UNION ALL
SELECT '1000229010203456' FROM DUAL
)
SELECT TO_TIMESTAMP(
TO_CHAR(19 + SUBSTR( candletime, 1, 1 ), '00' )
|| SUBSTR( candletime, 2),
'YYYYMMDDHH24MISSFF3'
) AS converted_time
FROM test_data