gpt4 book ai didi

sql - 使用 regexp_substr 从列中提取文本

转载 作者:行者123 更新时间:2023-12-02 04:00:10 28 4
gpt4 key购买 nike

我有一个带有 varchar 列的表,其中的数据如下:

"<tasa>
<parametros>
<parametro>
<nombre>ea</nombre>
<valor>35</valor>
</parametro>
</parametros>
<valorTasa>3.15</valorTasa>
</tasa>"

我需要能够提取 valorTasa 标记之间的值,但不知道如何使用该函数,也无法访问 Oracle 文档。

我正在尝试类似的事情

select regexp_substr(field, '<valorTasa>[0-9]{0-3}</valorTasa') from dual;

没有结果。任何帮助将不胜感激

最佳答案

更简单的方法是使用 extractvalue函数提取节点的值。

-- sample of data
SQL> with t1(col) as(
2 select '<tasa>
3 <parametros>
4 <parametro>
5 <nombre>ea</nombre>
6 <valor>35</valor>
7 </parametro>
8 </parametros>
9 <valorTasa>3.15</valorTasa>
10 </tasa>'
11 from dual
12 )
13 select extractvalue(xmltype(col), '/tasa/valorTasa') as res
14 from t1
15 /

RES
-------
3.15

关于sql - 使用 regexp_substr 从列中提取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708241/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com