StoredProcedure

Delphi

22/06/2005

Caros Colegas,

Preciso separar um numero inteiro e sua fração numa [b:522d25150f]storedprocedure[/b:522d25150f], não posso usar cast(campo as integer) porque ele me devolve a parte inteira arredondada e não é isso que eu preciso.Alguém tem uma idéia?


Ediane

Ediane

Curtidas 0

Respostas

Mkoch

Mkoch

22/06/2005

Não sei se o seu banco de dados possui os comandos SQL auxiliares apropriados como Pos, Copy, etc. Ex.
Valor = ´5.50´
NumInt = Copy(Valor, 1, Pos(Valor, ´.´))
Seu banco deve suportar comandos equivalentes ao Copy e Pos.
É só uma idéia, talvez a galera do fórum tenha outras melhores.


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

22/06/2005

Colega,

Qual é o banco de dados e qual o tipo de dado?


GOSTEI 0
Ediane

Ediane

22/06/2005

O banco é IB6, o campo é do tipo numeric(15,2).


GOSTEI 0
Lperosa

Lperosa

22/06/2005

Cara Ediane, para fazer isso eu uso uma UDF chamada SUBSTR(). CAMPO_NUMERIC NUMERIC (5,2) Ex.: PARTE_INTEIRA = SUBSTR(CAST(CAMPO_NUMERIC AS VARCHAR(8)),1,5); PARTE_DECIMAL = SUBSTR(CAST(CAMPO_NUMERIC AS VARCHAR(8)),7,8);




Editando:
Sorry, onde apareceu smileys = 8.
Corrigido (Desativar Smileys nesta mensagem).
Sandra/Moderação


GOSTEI 0
Ediane

Ediane

22/06/2005

Prezado Leonardo,

Valeu pela dica, vai ser muito útil.


GOSTEI 0
POSTAR