Fala Thiago, tudo em paz? Vamos começar com duas perguntas: 120 é igual a 120,000? 120 é igual a 0x78 (hexadecimal)?
Matematicamente sim. Então porque "parecem" diferentes? A diferença é a representação do número. A representação do número é uma string. O que está diferente não é o número, é o formato, como a gente pode ver pelo exemplo: SQL> select cast(120 as number(10,3)) as numero from dual; NUMERO ---------- 120 SQL> col numero for 999D999 SQL> select cast(120 as number(10,3)) as numero from dual; NUMERO -------- 120,000 SQL> Isso é configuração a nível de cliente. Espero ter ajudado. Um abraço. 2009/3/31 Thiago Delfim <tdel...@gmail.com> > Pessoal, > Algúem já teve algum problema desse tipo: > > select cast(120 as number(10,3)) from dual; > > No Oracle 9i retorna: 120 > No oracle 10g retorna: 120,000 > > É isso mesmo? Existem diferenças no CAST entre as duas versões do Oracle? > > Estou usando CAST para que uma VIEW retorne os números no formato > NUMBER(10,3). Fiz com CAST no Oracle 10 e funcionou como eu queria, mas no > Oracle 9 não. Como eu posso ter o mesmo efeito no Oracle 9 já que o CAST > tem > comportamento diferente? > > -- > Thiago Delfim > Oracle & SQL Server Database Administrator > Oracle 9i Database Certified Professional > tdel...@gmail.com <tdelfim%40gmail.com> (MSN) > Campinas/SP > (19) 8204-2681 / 9111-1439 > Sent from Campinas, São Paulo, Brazil > Rodney Dangerfield - "I haven't spoken to my wife in years. I didn't want > to interrupt her." > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Atenciosamente, Gleyson Melo Oracle Database 10g Administrator Certified Professional [As partes desta mensagem que não continham texto foram removidas]