6.14 提取第n个分割的子串
Posted 长城之上是千亿的星空,星空之上是不灭的守望。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.14 提取第n个分割的子串相关的知识,希望对你有一定的参考价值。
问题:从字符串中提取出一个指定的、由分割符隔开的子字符串。
create view v as
select ‘mo,larry,curly‘ as name
from t1
union all
select ‘tina,gina,jaunita,regina,leena‘ as name from t1;
select * from v;
+--------------------------------+
| name |
+--------------------------------+
| mo,larry,curly |
| tina,gina,jaunita,regina,leena |
+--------------------------------+
解决方案:
select name
from (
select iter.pos,
substring_index(
substring_index(src.name,‘,‘,iter.pos),‘,‘,-1) name
from v src,
(select id pos from t10) iter
where iter.pos <=
length(src.name)-length(replace(src.name,‘,‘,‘‘))
)x
where pos =2;
+-------+
| name |
+-------+
| larry |
| gina |
+-------+
以上是关于6.14 提取第n个分割的子串的主要内容,如果未能解决你的问题,请参考以下文章