[firebase-br] RES: Select com expresao regular

Daniel A.Donaduzzi daniel em coletsistemas.com.br
Seg Set 23 17:02:43 -03 2013


Acredito que a solução passa pelo uso de Stored Procedure que retorne a
coluna desejada. Aí dentro da procedure deves usar as funções de tratamento
de string do FB ou UDFs para obter e retornar a coluna desejada. Daí
poderás tratar a procedure como uma tabela, e usar a coluna retornada para
agrupar, ordenar, filtrar, etc.


*Daniel A.Donaduzzi*

*COLET - Sistemas de Gestão Empresarial*
*(51)3097-1210*



Em 23 de setembro de 2013 16:13, Marcelo Moreira <
marcelomoreira.souza em gmail.com> escreveu:

> O similar to apenas pode ser usado como condição pro select. No caso quero
> apenas extrair uma string de outra string.
>
>
> Em 23 de setembro de 2013 15:54, Marson (GMail) <marsonluis em gmail.com
> >escreveu:
>
> > Peço desculpas se estou trocando os pés pelas mãos mas, me parece, o que
> > tu precisas é o SIMILAR TO.
> > Veja:
> http://www.firebirdsql.org/**refdocs/langrefupd25-similar-**to.html<
> http://www.firebirdsql.org/refdocs/langrefupd25-similar-to.html>
> >
> > Márson de Paula
> >
> > Em 23/09/2013 15:25, Renato escreveu:
> >
> >  Entendi,
> >>
> >> da uma lida neste site , acredito que com uma adaptacao você consiga
> >> resolver seu problema.
> >>
> >> http://firebirdlikebrasil.**wordpress.com/2010/02/02/**split/<
> http://firebirdlikebrasil.wordpress.com/2010/02/02/split/>
> >>
> >> []´s
> >>
> >>
> >> -----Mensagem original-----
> >> De: lista [mailto:lista-bounces@**firebase.com.br<
> lista-bounces em firebase.com.br>]
> >> Em nome de Marcelo Moreira
> >> Enviada em: segunda-feira, 23 de setembro de 2013 15:18
> >> Para: FireBase
> >> Assunto: Re: [firebase-br] Select com expresao regular
> >>
> >> Jose,
> >>
> >> O problema é que o tamanho das strings entre os ( ;) vao variar. Por
> isso
> >> precisava usar expressao regular
> >>
> >>
> >> Em 23 de setembro de 2013 14:54, José Mauricio Barbisan Zottis <
> >> bzottis em ig.com.br> escreveu:
> >>
> >>  pesquise sobre substring que resolve
> >>>
> >>>
> >>>
> >>> Em 23 de setembro de 2013 14:46, Marcelo Moreira <
> >>> marcelomoreira.souza em gmail.com**> escreveu:
> >>>
> >>>  Pessoal,
> >>>>
> >>>> Firebird 2.5
> >>>>
> >>>> É possivel fazer um select usando expressao regular? Tenho uma
> >>>> coluna na tabela onde as informacoes ficam mais ou menos assim,
> >>>> separadas por
> >>>>
> >>> ponto e
> >>>
> >>>> virgula:
> >>>>
> >>>> 'A;A;B;A;C'
> >>>> 'A;E;B;A;C'
> >>>> 'A;F;B;A;C'
> >>>> 'A;F;B;A;C'
> >>>> 'A;F;B;A;C'
> >>>> 'A;C;B;A;C'
> >>>>
> >>>> Preciso fazer um select na tabela apresentando apenas um pedaço
> >>>> desta string no resultado. E depois fazer um agrupamento. Por isso
> >>>> pensei em expressao regular.
> >>>>
> >>>> Neste exemplo ai acima precisava retornar algo assim: Quero
> >>>> considerar todos os valores apenas da segunda posicao. entao eu teria:
> >>>>
> >>>> A
> >>>> E
> >>>> F
> >>>> F
> >>>> F
> >>>> C
> >>>>
> >>>> AGRUPANDO:
> >>>>
> >>>> A - 1
> >>>> E - 1
> >>>> F - 3
> >>>> C - 1
> >>>>
> >>>>
> >>>>
> >>>> Grato pela atencao
> >>>>
> >>>> --
> >>>> Marcelo Moreira
> >>>> (31) 8420-2723
> >>>> E-mail / MSN: marcelomoreira.souza em hotmail.**com<
> marcelomoreira.souza em hotmail.com>
> >>>> E-mail: marcelomoreira.souza em gmail.com
> >>>> Skype: marcelomoreira.souza
> >>>> ______________________________**________________
> >>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
> >>>> http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> >>>> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >>>>
> >>>>  ______________________________**________________
> >>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >>> Para saber como gerenciar/excluir seu cadastro na lista, use:
> >>> http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> >>> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >>>
> >>>
> >>
> >> --
> >> Marcelo Moreira
> >> (31) 8420-2723
> >> E-mail / MSN: marcelomoreira.souza em hotmail.**com<
> marcelomoreira.souza em hotmail.com>
> >> E-mail: marcelomoreira.souza em gmail.com
> >> Skype: marcelomoreira.souza
> >> ______________________________**________________
> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.brPara
> >> saber como gerenciar/excluir seu cadastro na lista, use:
> >> http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> >> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >>
> >>
> >> ______________________________**________________
> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
> >> http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> >> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >>
> >>
> >
> > ______________________________**________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> > Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >
>
>
>
> --
> Marcelo Moreira
> (31) 8420-2723
> E-mail / MSN: marcelomoreira.souza em hotmail.com
> E-mail: marcelomoreira.souza em gmail.com
> Skype: marcelomoreira.souza
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista