【问题标题】:Extract text after last occurrence of comma in hive在 hive 中最后一次出现逗号后提取文本
【发布时间】:2021-11-28 13:42:16
【问题描述】:

我想提取最后一个逗号之后的所有内容

abc,xyz,tuv
abc,123,abc,def

我希望结果为

tuv
def

【问题讨论】:

    标签: sql csv hive substring hiveql


    【解决方案1】:

    请使用

    substr(col,-1*instr(col,',',-1)+1)
    

    所以这里 instr 将从字符串末尾找到逗号的位置。然后 substring 将从末尾选择那么多字符串。

    【讨论】:

      【解决方案2】:

      使用 regexp_extract:

      regexp_extract(col,',([^,]+)$',1)
      

      使用拆分:

      split(col,',')[size(split(col,','))-1]
      

      【讨论】:

        猜你喜欢
        • 2014-07-31
        • 1970-01-01
        • 2013-11-03
        • 1970-01-01
        • 2017-08-20
        • 1970-01-01
        • 2018-09-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多