我在SQL中有一个字符串
1|208080|"20170815|00:00:00"|"20160615|23:59:59
我只需要从SQL
中的select语句中获取值20160615
答案 0 :(得分:0)
这个正则表达式处理列表中存在的NULL元素,并且只抓取第5个管道分隔字段中的数字(双引号看起来像拼写错误,但你永远不知道)。它非常灵活,因此您可以获得所需的任何字段,只需更换“' 5'在与你想要的领域的通话中。
SQL> with tbl(str) as (
select '1|208080|"20170815|00:00:00"|"20160615|23:59:59'
from dual
)
select regexp_substr(str, '(\d*?)(\||$)', 1, 5, NULL, 1) field5
from tbl;
FIELD5
--------
20160615
SQL>