oracle中如何替换特殊字符然后换行 [英] How to replace special characters and then break line in oracle

查看:189
本文介绍了oracle中如何替换特殊字符然后换行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这就是我在 Oracle 12c 中获得结果的方式

This is how I am getting result in Oracle 12c

<头>
ID日期范围
1[2019-01-07"、2019-02-17"、2019-03-17"]

我想要

<头>
ID日期范围
12019-01-07
12019-02-17
12019-03-17

我尝试了替换功能,但它在开始或结束时都有效我想删除 [ ] 和 "

I tried replace function but it works either at the beginning or at end I want to remove [ ] and "

推荐答案

由于您的 Oracle 版本是 12,您可以在当前输出上使用 JSON 函数来获得所需的输出.您当前的输出是一个有效的 JSON 字符串数组,您需要做的就是提取它们.像这样:

Since your Oracle version is 12, you can use JSON functions on your current output to get the desired output. Your current output is a valid JSON array of strings, all you need to do is to extract them. Something like this:

with
  current_output (id, date_range) as (
    select 1, '["2019-01-07","2019-02-17","2019-03-17"]' from dual
  )
select co.id, t.date_range
from   current_output co
       cross apply
       json_table(co.date_range, '$[*]' columns date_range path '$') t
;

ID DATE_RANGE     
-- ---------------
 1 2019-01-07     
 1 2019-02-17     
 1 2019-03-17 

这篇关于oracle中如何替换特殊字符然后换行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆