Reverse String Word by Word using SQL

后端 未结 5 1483
半阙折子戏
半阙折子戏 2020-12-15 13:19

I would need to reverse the word positions in a sentence or String.

For example : \"Hello World! I Love StackOverflow\", to be displayed as \"StackOverflow          


        
5条回答
  •  孤街浪徒
    2020-12-15 14:01

    One more solution

    WITH str_tab(str1, rn) AS
    (SELECT regexp_substr(str, '[^\[:space:]]+', 1, LEVEL), 
            LEVEL 
       FROM (SELECT 'Hello World! I Love StackOverflow' str
               FROM dual) tab
    CONNECT BY LEVEL <= LENGTH(str) - LENGTH(REPLACE(str, ' ')) + 1)
    SELECT listagg(str1, ' ') WITHIN GROUP (ORDER BY rn DESC) AS new_text
      FROM str_tab;
    

提交回复
热议问题