ORACLE 特殊日期时间转换,计算

一:特殊日期处理

  1. 如该字段存储日期形式为:2023/4/23 9:00,2023-3-1 12:23。将这样的数据转换成正确的格式(yyyy-mm-dd HH24:mi:ss),即为:2023-04-23 09:00:00。这里举例的字段为:JSSJ,YDSJ
  2. 如该字段存储日期时间为:2023-09-28 15:26:16.000的格式。将这样的格式转为DATE类型的格式,即为:2023-09-28 15:26:16。这里举例的字段分别为:ACDMSTARTTIME,ACDMENDTIME

举例如下:
查询出转换前的日期时间和转换后的日期时间:
我这里别人存储时所有的字段都是VARCHAR2字符串类型的

查询和处理的sql:

SELECT
	JSSJ,
	to_date( translate(JSSJ, 'TS', ' ' ), 'yyyy-mm-dd HH24:mi:ss' )JSSJ,
	YDSJ,
	to_date( translate(YDSJ, 'TS', ' ' ), 'yyyy-mm-dd HH24:mi:ss' )YDSJ,
	ACDMSTARTTIME,
	CAST(TO_TIMESTAMP(ACDMSTARTTIME,'yyyy-MM-dd hh24:mi:ss.ff3') AS DATE)ACDMSTARTTIME,
	ACDMENDTIME,
	CAST(TO_TIMESTAMP(ACDMENDTIME,'yyyy-MM-dd hh24:mi:ss.ff3') AS DATE)ACDMENDTIME
FROM
	CBSDADE

查询结果如下:
ORACLE 特殊日期时间转换,计算_第1张图片

二:时间计算

看这篇博客:https://blog.csdn.net/kingkongii/article/details/10469403

你可能感兴趣的:(记录,oracle,数据库)