ToDataW 2022-04-18 10:13 采纳率: 100%
浏览 92
已结题

hive-sql 拆分字符串

原始数据 67240036,0,150,67239980,2,20,67239980,2,20

结果
67240036,0,150
67239980,2,20
67239980,2,20

一个字段中存的 一个拼接的字符串 数据规律 是 每三个为一组 需要新拆分出 每三个一组的多行数据怎么实现啊

  • 写回答

2条回答 默认 最新

  • ❀lee 2022-04-18 10:31
    关注

    1.这是一串字符串 都存在一行里面
    2.使用posexplode 炸裂函数,炸裂之后就是1,2,3。举一个例子。
    小明,小红,小强 通过上面这个炸裂函数之后变成
    小明 1
    小红 2
    小强 3
    3.将后面的数字-1再除以3,根据除出来的结果进行分组,分组之后使用collect_set或者collect_list和concat函数进行结合。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    ❀lee 2022-04-18 10:37

    这个炸裂函数要配合split使用

    回复
    ❀lee 回复 ❀lee 2022-04-18 10:37

    通过后面的数字进行分组,除以三,每三个分为一组。

    回复
    ❀lee 回复 ❀lee 2022-04-18 10:38

    使用collect_set和concat函数将三个分散的,但是属于同一类的进行拼接

    回复
    展开全部15条评论
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 4月25日
  • 已采纳回答 4月18日
  • 创建了问题 4月18日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部