Como separar informações de uma string com separador

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
thrrent
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 27
Registrado em: Dom, 29 Jan 2012 5:28 pm
Localização: Rio de Janeiro

Saudações Pessoal,

Estou com a seguinte situação:

tenho um campo de string com informações como no exemplo abaixo

Texto 1/Texto 2/Texto 3/Texto 4

Preciso fazer um select que me retorne os Textos em linhas, acredito que os separadores vao ajudar...
O resultado seria assim:

Texto 1
Texto 2
Texto 3
Texto 4

Como se fossem registros separados. Alguém sabe se existe alguma função milagrosa para isso?
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Bem, existe sim uma forma de realizar seu MILAGRE.
Utilizando de algumas funções de hierarquia e de expressões regulares é possível realizar:

Selecionar tudo

select REGEXP_SUBSTR(str, exp, 1, level) dados
from (select '0/11/222/3333/44444/555555/6666666/77777777/888888888' str
          , '[^/]+' exp
          from dual)
connect by REGEXP_SUBSTR(str, exp, 1, level) is not null
Isnt miRACLE, Its ORACLE!!! (:P, good slogan).
thrrent
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 27
Registrado em: Dom, 29 Jan 2012 5:28 pm
Localização: Rio de Janeiro

Noctifero escreveu:Bem, existe sim uma forma de realizar seu MILAGRE.
Utilizando de algumas funções de hierarquia e de expressões regulares é possível realizar:

Selecionar tudo

select REGEXP_SUBSTR(str, exp, 1, level) dados
from (select '0/11/222/3333/44444/555555/6666666/77777777/888888888' str
          , '[^/]+' exp
          from dual)
connect by REGEXP_SUBSTR(str, exp, 1, level) is not null
Isnt miRACLE, Its ORACLE!!! (:P, good slogan).

Obrigado Noctifero, era exatamente disso que eu precisava!
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 18 visitantes