Oracle 四则运算 结果的精度 select t.price * t.count result from t我想知道计算结果的的情况,计算结果最大能表示多少位数,小数位数等,误差等。越详细越好 解决方案 » 计算结果的精度应该与数据类型有关系。number目前是精度最高的类型吧,b_float,b_double都没它精度高。 t.price,t.count 你的这两个是什么类型咯?由这个字段决定的,不过你也可以对result 这个设置格式--例如SQL> col newcol format 9999999999999999.99999999999;SQL> select sal,sal*0.323233432 newcol from emp where rownum<3; SAL NEWCOL---------- ----------------------------- 800 258.58674560000 1600 517.17349120000--或者用to_number()SQL> select sal,to_number(sal*0.32324234,'9999999999999999.99999999999') from emp where rownum<3; SAL TO_NUMBER(SAL*0.32324234,'9999999999999999.99999999999')---------- -------------------------------------------------------- 800 258.593872 1600 517.187744 t.price 是Number(10,2),t.count是number . number(x,y)*number(x,y)和 number * number 和 number *number(x,y) 的计算结果精度分别是什么啊 --好像这个跟环境设置有关,我这边的默认是保留3为小数--不过你可以用to_number()设置你想要的格式 2楼的SQL> select 23.323*23423.3423432 from dual;23.323*23423.3423432-------------------- 546302.613SQL> col newcol format 9999999999999999.99999999999999;SQL> select 23.323*23423.3423432 newcol from dual; NEWCOL-------------------------------- 546302.61347045360000 这东西跟你的price 的设计有关要是count是个整零的数 你的结果就没有小数位;不是的话 小数位就是你的price有几位小数就几位 怎么把表中的一个字段的全部值当成另一个表的每一列 Oracle数据库备份有哪些? ORACLE字符串截取成数组 这个INSERT语句应该怎么写呢? 主键,索引 .net通过Oledb连接Oracle在本地需要配置是哪些环境? 请高手进来看下如何解决这样的问题? 我晕呀??? 求教关于sql迁入c的问题! SQL问题,请教 请问SRVCTL命令的默认安装路径在哪里? Orcle查询问题
number目前是精度最高的类型吧,b_float,b_double都没它精度高。
由这个字段决定的,不过你也可以对result 这个设置格式
--例如
SQL> col newcol format 9999999999999999.99999999999;
SQL> select sal,sal*0.323233432 newcol from emp where rownum<3; SAL NEWCOL
---------- -----------------------------
800 258.58674560000
1600 517.17349120000
--或者用to_number()
SQL> select sal,to_number(sal*0.32324234,'9999999999999999.99999999999') from emp where rownum<3; SAL TO_NUMBER(SAL*0.32324234,'9999999999999999.99999999999')
---------- --------------------------------------------------------
800 258.593872
1600 517.187744
--不过你可以用to_number()设置你想要的格式 2楼的
SQL> select 23.323*23423.3423432 from dual;23.323*23423.3423432
--------------------
546302.613SQL> col newcol format 9999999999999999.99999999999999;
SQL> select 23.323*23423.3423432 newcol from dual; NEWCOL
--------------------------------
546302.61347045360000
要是count是个整零的数 你的结果就没有小数位;
不是的话 小数位就是你的price有几位小数就几位