hive 如何在配置表中将一列拆分为两列?

cs7cruho  于 12个月前  发布在  Hive
关注(0)|答案(1)|浏览(203)

我想将name列拆分为2列,其中name中有许多hiphen(-),但我想从hive db中的最后一个hiphen(-)HiveQL拆分。
例如,检查下表
| 姓名|年龄|
| - -----|- -----|
| a-b-c-d_b|二十二|
| d-e-f-g_e|四十四|
我希望输出像拆分名称列一样,只使用last(-)
所以输出表应该如下所示
| 姓名|年龄|新名称|
| - -----|- -----|- -----|
| a-b-c-d_b|二十二|d_B|
| d-e-f-g_e|四十四|g_e|

l3zydbqr

l3zydbqr1#

请使用下面的SQL。
首先反转字符串,然后使用-拆分字符串并选择第一个拆分。然后再反转以获得所需的字符串。你可以参考下面的截图。

select reverse(split( reverse(name),'-')[0]) as new_name

相关问题