大家好,请帮帮我......
下面提到的行是一列数据。
column1:Supplier Setup request submitted on 2016-01-06 06:00:25.141 by WFS ADMINISTRATOR
我想分为两列,如columnA
和columnB
:
columnA columnB
WFS ADMINISTRATOR 2016-01-06 06:00:25.141
我使用子字符串和instring函数编写了查询:
select SUBSTR(column1, INSTR(column1,'on',1)+2, INSTR(column1,'by',1)-INSTR(column1,'on',2)-2) as columnB
from xyz
工作正常,但我希望显示日期格式,如MM/DD/YYYY HH24:MI:SS
。
我无法获得日期格式......
答案 0 :(得分:0)
假设columnB现在持有日期部分:
to_date(columnB,'MM/DD/YYYY HH24:MI:SS');
答案 1 :(得分:0)
您可以使用
获取日期时间部分regexp_replace(col, '.*on (.*) by.*', '\1')
您可以使用
将此类字符串转换为时间戳to_timestamp(str, 'yyyy-mm-dd hh24:mi:ss.ff')
您可以使用
将时间戳转换为格式为MM/DD/YYYY HH24:MI:SS
的字符串
to_char(ts, 'mm/dd/yyyy hh24:mi:ss')
合:
to_char
(
to_timestamp
(
regexp_replace(col, '.*on (.*) by.*', '\1'), 'yyyy-mm-dd hh24:mi:ss.ff'
), 'mm/dd/yyyy hh24:mi:ss'
)