Pegar PArte de uma string, tem como?

Firebird

05/12/2005

Olá, em outra discussão, mencionei meu problema com o Cast, agora me veio uma questao..

Tenho a string: 12,8

De certo o interbase so aceita decimal com ponto, então pensei em pegar a parte antes da virgula e depois da virgula, juntar com um ponto e dar um cast nele, assim teoricamente teria que dar certo, porém como faço isso no PSQL? Pois em Delphi é facil.. :D

existe alguma UDF que faça isso? ou que transforme?

Desde já agradeço


Titanius

Titanius

Curtidas 0

Respostas

Thomaz_prg

Thomaz_prg

05/12/2005

Para tirar parte de uma string:

SUBSTRING( <string expr> FROM <pos> [FOR <length>])

Usaria assim:

Select Cast( Substring( Campo FROM 1 FOR 2 )||´.´||Substring(Campo FROM 4) as Decimal(10,2) ) as Valor From Tabela


Mas o exemplo que coloquei acima, apenas substitui o exemplo que você mostrou (12,5). Mas você pode construir uma UDF para fazer isso... não é muito complicado não.


GOSTEI 0
Titanius

Titanius

05/12/2005

Valeu tomaz... fiz uma UDF, que assim, funciona pra qualquer numero.. :D

Obrigado.


GOSTEI 0
POSTAR