CASAS DECIMAIS

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
RODRIGO_PINTO
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 30
Registrado em: Qui, 08 Mar 2007 11:52 am
Localização: SP

GALERA PRECISO GERAR UM ARQUIVO COM DUAS CASAS DECIMAIS A DIREITA SEM A VIRGULA. alguém SABE ME DIZER QUAL A MELHOR MANEIRA ??

já TENTEI:

Selecionar tudo

SELECT RPAD( '125021,36', LENGTH('125021,36' +5),0)   FROM duaL
AGRADECO DESDE já..
Tineks
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 365
Registrado em: Ter, 24 Mai 2005 2:24 pm
Localização: Araraquara - SP
Cristiano (Tineks)
Araraquara - SP

E ai Rodrigo, beleza??

vê se isso pode ajudar.!

Selecionar tudo

SELECT REPLACE (TO_CHAR (123021.362,'999999D99MI','NLS_NUMERIC_CHARACTERS = '',.'''),',','') FROM DUAL
[]'s
rogenaro
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 232
Registrado em: Sex, 30 Mar 2007 7:26 pm
Localização: Londrina - PR
Rafael O. Genaro

ou também:

Selecionar tudo

select trunc(12345.678 * 100) from dual
Avatar do usuário
TBou
Rank: Analista Sênior
Rank: Analista Sênior
Mensagens: 136
Registrado em: Qui, 05 Ago 2004 9:33 am
Localização: Campo Grande - MS
Thiago Bourscheidt
thiago.info@apoiorural.com.br
Analista de Sistemas

cara eu aconselho fazer o seguinte, por questoes do sistema poder usar menos que uma casa decimal como por exemplo 12,10 que ele irá enternder como 12,1 é interessante dar um to_char com mascara e depois tirar a virgula como abaixo.

round para arredondar em duas casas
to_char para gerar 12345,13
e o replace para tirar a virgula 1234513 sendo que as ultimas duas é decimal

Selecionar tudo

select replace(to_char(round(12345.125,2),'FM999999999990D00'),',','')
from dual
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante