如何在配置单元中拆分由分号分隔的字符串字段?
select split(f1,";")[0] from table;
你可以这样写
select split(f1,'\073')[0] from table;
想要重申这确实是一个 Hue 错误,但仅限于 Hortonworks 版本。最新的 Cloudera 版本的 Hue 运行良好。
以下命令将起作用:
1;Neethu KV
2;Ram KV
查询1:
select split(name,"\\;")[0],school from table_test
,其中 name 是指要拆分的列名。
1 KV
2 KV
查询 2:
select split(name,"\\;")[1],school from table_test
,其中 name 是指要拆分的列名。
Neethu KV
Ram KV
您可以尝试使用 '\03B' 而不是分号。它对我有用。试试 。
我认为这是 Hue 中的一个错误,\; 从命令行工作正常。
split 函数需要一个正则表达式。
对于特殊字符,转义它们就足够了,例如 '\;'
https://linuxandryan.wordpress.com/2014/03/05/hive-split-on-special-characters-escape-in-split/