hive写法:string字段中有多个’,‘和’]‘,截取字段最后一个’]‘和’,‘之间的部分,用SUBSTRING_INDEX
时间: 2024-11-03 20:14:55 浏览: 45
在Hive中,如果你有一个字符串字段,它包含多个逗号(`', '`) 和右方括号(`']'`),并且你想提取最后一个`']`和`','`之间的内容,可以使用`SUBSTRING_INDEX()`函数结合正向递归查找的方式。假设你的字段名为`str_column`,你可以这样做:
```sql
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(str_column, '[', -1), ',', 1) AS extracted_part
FROM your_table;
```
这里解释一下步骤:
1. `SUBSTRING_INDEX(str_column, '[', -1)`:找到最右边的`'[`,因为我们要找的是从这个`'['开始到下一个`','`结束的部分。`-1`表示从倒数第一个匹配项开始。
2. `SUBSTRING_INDEX(..., ',', 1)`:在找到的`'[...]'`区间内,再找第一个`','`,并返回从`'['到这个`','`之间的部分。`1`表示只取第一个出现的。
请注意,这个查询假设`str_column`的最后面总是存在一个有效的`']`字符。如果`']`不在最后,或者没有`','`跟随`']`,结果可能会不符合预期。
阅读全文
相关推荐

















