如何编写查询来拆分字符串,如 'india|koria'
基于 '|'
进入 india
以及 korea
我试过这个
select
SUBSTRING('India|Korea', 1, position('|' in 'India|Korea') - 1) as first,
SUBSTRING('India|Korea', position(',' in 'India|Korea') + 1)as second
但我有个错误:
编译语句时出错:失败:parseException:无法识别表达式规范中“in''''india | korea''')附近的输入
有人帮忙吗?提前谢谢。
注意:我正在配置单元编辑器中运行此查询。
2条答案
按热度按时间busg9geu1#
我认为最新版本的hive支持
substring_index()
. 不过,按照你的逻辑,不要用position()
,使用instr()
:rt4zxlrg2#
尝试在配置单元中拆分自定义项:
另请参见:https://cwiki.apache.org/confluence/display/hive/languagemanual+udf