需要从Presto Teradata获取数据并限制列数据

时间:2018-12-13 09:20:19

标签: sql teradata

select * from rest where url like 'https://%.sureshchitturi.com:444/%/%';

我可以在上面的地方使用上面的数据,但是我想要在select语句中使用一些东西来使所有数据达到第四个'/'符号,其余部分不需要,建议我使用一些函数使其起作用

sample

Articles/Search/ArtMID/2681/ArticleID/2218/Diet.aspx
OurStory/boot/food/street/MeettheFoodieandtheMD.aspx
TheFood/OurMenu.aspx/abc/def/abbac

output

Articles/Search/ArtMID/2681
OurStory/boot/food/street
TheFood/OurMenu.aspx/abc/def

谢谢

2 个答案:

答案 0 :(得分:0)

如果总是至少有四个斜杠,则可以使用

Substr(col, 1, Instr(col, '/', 1, 4)-1)

否则切换到正则表达式:

RegExp_Substr(col, '(.*?/){3}([^/]+)') -- at least .../.../.../.

答案 1 :(得分:0)

请在下面执行:

  SELECT RegExp_Substr('Articles/Search/ArtMID/2681/ArticleID/2218/Diet.aspx', '(.*?/){3}([^/]+)')  
    FROM dual;