как округлить number

magikan_s_raboty
Дата: 06.12.2007 11:28:43
как сделать так, чтобы функция имея число
12,333 --> 12,33, 12,999 --> 12,99
то есть отбрасывала тысячные части.
Заранее благодарен .
Oleg Afanasiev
Дата: 06.12.2007 11:31:26
select trunc(2.999,2) from dual

-----------------------
Вечны налоги,
Смерть и потеря данных.
Что на этот раз?
magikan_s_raboty
Дата: 06.12.2007 11:34:53
Спасибо Oleg Afanasiev , помогло.
Gogen
Дата: 06.12.2007 12:42:28
не путайте только Trunc и Round. Первое "отрубает" мантису, второе округляет до указанного знака
andrey_anonymous
Дата: 06.12.2007 12:51:30
Gogen
не путайте только Trunc и Round. Первое "отрубает" мантису, второе округляет до указанного знака

И не стоит забывать о floor и ceil:
SQL> with tab as (select .3333 x from dual
  2  union all select -.3333 from dual
  3  union all select .7777 from dual
  4  union all select -.7777 from dual)
  5  select round(x,2), trunc(x,2), floor(x*100)/100, ceil(x*100)/100 from tab;
 
ROUND(X,2) TRUNC(X,2) FLOOR(X*100)/100 CEIL(X*100)/100
---------- ---------- ---------------- ---------------
      0.33       0.33             0.33            0.34
     -0.33      -0.33            -0.34           -0.33
      0.78       0.77             0.77            0.78
     -0.78      -0.77            -0.78           -0.77
 
SQL>