【问题标题】:How to get a substring from a character on如何从字符中获取子字符串
【发布时间】:2020-09-25 08:08:23
【问题描述】:
我有一个包含 varchar2 列的表,其中有不同长度的字符串,我必须在字符“-”之后提取子字符串。
STRING_COL
afg a ga ga ga ggfdg - gfd g f
ok k ok o - gfs gsd gsg sd g sd
okk - jdjdjdj d d
...
我想在'-'字符之后得到所有内容
你能告诉我怎么做吗?
甲骨文10g
提前致谢!
标记
【问题讨论】:
标签:
sql
string
oracle
oracle10g
【解决方案1】:
看起来不错,旧的 SUBSTR + INSTR 组合。如果要删除前导/尾随空格,请应用 TRIM。
SQL> select string_col,
2 substr(string_col, instr(string_col, '-') + 1) result,
3 --
4 trim(substr(string_col, instr(string_col, '-') + 1)) trimmed_result
5 from test;
STRING_COL RESULT TRIMMED_RESULT
-------------------------------------------------- -------------------- --------------------
afg a ga ga ga ggfdg - gfd g f gfd g f gfd g f
ok k ok o - gfs gsd gsg sd g sd gfs gsd gsg sd g sd gfs gsd gsg sd g sd
okk - jdjdjdj d d jdjdjdj d d jdjdjdj d d
SQL>
【讨论】:
-
@Mark:通过单击复选标志考虑accept it 的答案。这向社区表明您的问题已得到解决(并奖励回答者!)。