[firebase-br] Achar Codigo Válido em String

acf em andreconrado.net acf em andreconrado.net
Qui Jan 5 10:38:08 -03 2012


Bom dia Zottis,

A partir da versão fb 2.1 foi adicionada a função POSITION(<sub-texto>  
in <texto>)

Eu usaria esta função:

select F.cod_far_mtr, F.data_cad,f.lacre_numero,
        substring(F.lacre_numero from 1 for POSITION('-' IN  
F.lacre_numero)-1) campo1,
        substring(F.lacre_numero from 7 for POSITION('-' IN  
F.lacre_numero)-1) campo2,
        ...
        substring(F.lacre_numero from 115 for POSITION('-' IN  
F.lacre_numero)-1) campo20


Supondo que todos os grupos possuem o mesmo tamanho.

É possível simplificar usando SP ou EB.

Abraços,
Conrado.



Citando Zottis <bzottis em ig.com.br>:

> Pessoal, tenho uma tabela com um campo de lacres com 120 caracteres,
>
> Com uma estrutura assim:
>
>
>
> 86056-85337-86098-86100-86023-85385-86074-86046-86008-86043.... até 120
> caracteres
>
>
>
> Mas também neste mesmo campo, tem assim:
>
> 0111173-0111165-0111139-0111192-0111164-0111130-0111117-0111184
>
>
>
> Como faço para cadastrar em uma tabela este s lacres/
>
>
>
> Olhando as mensagens antigas, consigo pegar os lacres assim
>
> select F.cod_far_mtr, F.data_cad,f.lacre_numero,
>
>        substring(F.lacre_numero from 1 for 5) campo1,
>
>        substring(F.lacre_numero from 7 for 5) campo2,
>
>        substring(F.lacre_numero from 13 for 5) campo3,
>
>        substring(F.lacre_numero from 19 for 5)campo4,
>
>        substring(F.lacre_numero from 25 for 5)campo5,
>
>        substring(F.lacre_numero from 31 for 5)campo6,
>
>        substring(F.lacre_numero from 37 for 5)campo7,
>
>        substring(F.lacre_numero from 43 for 5)campo8,
>
>        substring(F.lacre_numero from 49 for 5)campo9,
>
>        substring(F.lacre_numero from 55 for 5)campo10,
>
>        substring(F.lacre_numero from 61 for 5)campo11,
>
>        substring(F.lacre_numero from 67 for 5)campo12,
>
>        substring(F.lacre_numero from 73 for 5)campo13,
>
>        substring(F.lacre_numero from 79 for 5)campo14,
>
>        substring(F.lacre_numero from 85 for 5)campo15,
>
>        substring(F.lacre_numero from 91 for 5)campo16,
>
>        substring(F.lacre_numero from 97 for 5)campo17,
>
>        substring(F.lacre_numero from 103 for 5)campo18,
>
>        substring(F.lacre_numero from 109 for 5)campo19,
>
>        substring(F.lacre_numero from 115 for 5)campo20
>
> mas como saber se é com 5 caracteres ou 7?
>
>
>
>
>
> Desde já agradeço
>
> ______________________________________________
> 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
>



André Conrado
+55 21 88406232

http://andreconrado.net

"Posso todas as coisas naquele que me fortalece" Filipenses 4:13





Mais detalhes sobre a lista de discussão lista