gpt4 book ai didi

text - 如何从oracle sql中的字符之间获取文本

转载 作者:行者123 更新时间:2023-12-01 09:29:17 25 4
gpt4 key购买 nike

大家好,这是我的第一篇文章,我也是 sql 的新手。我正在尝试从字符串中提取文本

我有一个看起来像这样的表格列

站点 - abc - 左侧
site - def - left
site - ghi - right - inner
site - jkl - right - inner
网站 - mno
网站-pqr

我需要一个查询来返回前两个“-”之间的文本,但根据示例,有些查询只有一个“-”。

例如。

abc
def
ghi
jkl
mno
pqr

非常接受任何帮助

我一直在使用的代码只给了我第一列“站点”。

SELECT SUBSTR(site.description,1,instr(site.description,'-',1,1)-1) AS loc
来自表

最佳答案

假设您的数据驻留在名为 test_n 的表中,其中只有列 val 具有上述问题中提到的值,查询是:

select val
, instr(val, '-', 1,1) + 1 START_POS
, instr(val, '-',1,2) END_POS
, substr(val, instr(val, '-', 1,1) + 1, decode(instr(val, '-',1,2),0,length(val)+1,instr(val, '-',1,2) ) - instr(val, '-', 1,1)-1 ) result
FROM test_n;

关于text - 如何从oracle sql中的字符之间获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17427038/

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