代码之家  ›  专栏  ›  技术社区  ›  MattRgx

配置单元中的Regexp将一列拆分为3列

  •  0
  • MattRgx  · 技术社区  · 2 年前

    我正努力从那里走出来

    | date                                         |
    ------------------------------------------------
    | 20220110 15:00/20220111 15:00/20220112 15:00 |
    

    去那里

    | date1          | date2          | date3          |
    ----------------------------------------------------
    | 20220110 15:00 | 20220111 15:00 | 20220112 15:00 |
    

    到目前为止我已经试过了

    SELECT regexp_extract(date,'.*\/(.*)',1)
    

    但我只能得到最后一次约会。不是第一个或第二个/

    如果我试试这个

    SELECT regexp_extract(date,'(.*)/\(.*)',1)
    

    我把第一列和第二列作为一列。

    谢谢

    1 回复  |  直到 2 年前
        1
  •  1
  •   isaactfa    2 年前

    我对Hive不太熟悉,所以我不能百分之百确定,但我假设你不能一次完成所有三列,你必须依次完成每一列。

    第一个

    SELECT regexp_extract(date, '(.+)\/.+\/.+', 1)
    

    第二个

    SELECT regexp_extract(date, '.+\/(.+)\/.+', 1)
    

    第三个呢

    SELECT regexp_extract(date, '.+\/.+\/(.+)', 1)
    

    希望这能帮到你!