精华内容
下载资源
问答
  • Oracle中保留两位小数

    万次阅读 多人点赞 2017-06-02 08:23:47
    在最近的项目开发中,有个业务需求是界面显示的数字需要保留两位小数,目前我想到的解决方法有两种: (1)在写SQL的时候,直接保留两位小数 (2)在java代码里面将查询出来的数进行格式化处理,保留两位小数 先...

    在最近的项目开发中,有个业务需求是界面显示的数字需要保留两位小数,目前我想到的解决方法有两种:
    (1)在写SQL的时候,直接保留两位小数
    (2)在java代码里面将查询出来的数进行格式化处理,保留两位小数
    先说第一种方案:在SQL中的处理
    我使用的oracle数据库,所以有3个函数可以选择,分别是:
    (1)ROUND(A/B,2)
    ROUND()函数是会将计算结果进行四舍五入的,如果所需要的值需要进行四舍五入,就可以选择这个函数,可以有一个参数,也可以有两个参数;如果有两个param,第一个是你的计算表达式,第二个是需要保留的小数位数。例子如下:
    这里写图片描述
    (2)TRUNC(A/B,2)
    TRUNC()函数是不会将计算结果进行四舍五入的,如果所需要的值不需要进行四舍五入,就可以选择这个函数,可以有一个参数,也可以有两个参数;如果有两个param,第一个是你的计算表达式,第二个是需要保留的小数位数。例子如下:
    这里写图片描述
    (3)TO_CHAR(A/B,‘FM99990.99’)
    TO_CHAR()是一个格式化函数,第一个参数是计算表达式,第二个参数是指定格式化的格式,如果保留两位小数则小数点后写两个99,这里的数字9代表的数字,也是一个占位符,表示该位置上以后会是一个数字,为什么小数点前面会是一个0,而不是9,是因为如果计算结果小于1,那么只会显示小数点和小数点之后的部分,前面的0会忽略掉
    这里写图片描述
    这里写图片描述


    2019年7月25日更新

    在评论中有人提到一个问题,在SQL计算中,比如1/10的结果是0.1,但是实际需要得到的结果是0.10,那么用我上面的那些方法得到的结果只可以是0.1,不可以是0.10,对于这个问题,我去oracle官网的文档查看了一下,可以采用如下的写法得到:

    select to_char(a/b,'FM9990.00') AS result  from dual;
    

    这里就是需要注意的一点就是0和9的区别,具体我没找到相关的信息,暂时说一下我的想法,0和9应该都是类似于占位符,你实际除得的结果中的数字一般会替换掉9,但是当你整数部分只有一位且是0的时候,那么你需要在格式化的时候用0来指定格式化的模型,如上文那个.67的样子,小数点后面的值,你可以用0也可以用9来指定模式,用9指定的结果就是你的小数点本来后面几位它就显示几位,如果用0来指代,它在位数不够的情况下会用0去进行占位填充。

    格式化官方文档oracle 10g

    oracle format models

    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • PHP保留两位小数的三种方法

    万次阅读 2016-07-16 13:40:09
    PHP保留两位小数的三种方法/** * PHP保留两位小数的几种方法 * @link http://www.phpddt.com */ $num = 10.4567;//第一种:利用round()对浮点数进行四舍五入 echo round($num,2); //10.46//第二种:利用sprintf...

    PHP保留两位小数的三种方法

    ps:本人亲测,阿里云2核4G5M的服务器性价比很高,新用户一块多一天,老用户三块多一天,最高可以买三年,感兴趣的可以戳一下:阿里云折扣服务器

    /**
     * PHP保留两位小数的几种方法
     * @link http://www.phpddt.com
     */
    $num = 10.4567;
     
    //第一种:利用round()对浮点数进行四舍五入
    echo round($num,2);  //10.46
     
    //第二种:利用sprintf格式化字符串
    $format_num = sprintf("%.2f",$num);
    echo $format_num;  //10.46
     
    //第三种:利用千位分组来格式化数字的函数number_format()
    echo number_format($num, 2);  //10.46
    //或者如下
    echo number_format($num, 2, '.', '');  //10/46
    
    展开全文
  • 做题遇到保留两位小数的题目,课本上写的又多又杂,网上查来的也是一堆内容需要筛选,눈_눈还是自己总结一下吧。  首先说C++代码 #include <iomanip&gt...

    做题遇到保留两位小数的题目,课本上写的又多又杂,网上查来的也是一堆内容需要筛选,눈_눈还是自己总结一下吧。


    首先说C++代码

    	#include <iomanip>  //不要忘了头文件
    
    	//第一种写法
    	cout<<setiosflags(ios::fixed)<<setprecision(2);
    
    	//第二种写法
    	cout.setf(ios::fixed);
    	cout<<setprecision(2);
    
    	//第三种写法
    	cout<<fixed<<setprecision(2);
    
    • 要保留几位小数setprecision(n)的括号里n就换成几。
    • 前两种写法是一样的,第三种是简化写的。
    • 上面的语句写一次就行了,对之后的数字都有效。

    然后说C的代码

    个人感觉c的输出比较简单粗暴。

    • %f 格式化输出浮点型数据,在%之后加上“.n”即可。例如:
    #include  <stdio.h>
    int main()
    {
    	float PI=3.1415926;
    	float R=5.3;
    	printf("面积 = %.2f\n", PI * R * R); //输出:面积 = 88.25
    	printf("面积 = %f\n", PI * R * R);   //输出:面积 = 88.247337
    	printf("面积 = %.8f\n", PI * R * R); //输出:面积 = 88.24733734
            return 0;
    }
    
    • %.2f\n中的“.2”即保留两位小数
    • //不设定保留几位小数,则默认六位

    如果单纯会用就行,看到这里就可以了!


    想深入理解的,继续看下面눈_눈

    1.首先解释一下“语句写一次就行了,对之后的数字都有效”。在s之后设置保留两位小数之后,重新声明另一个数,输出依旧显示两位小数。所以设置精度语句只需写一次就可以了。

    #include <iostream>
    #include <iomanip>   //设置必备的头文件
    using namespace std;
    int main()
    {
    	double s=12.345;
    	cout<<setiosflags(ios::fixed)<<setprecision(2);
    	cout<<s<<endl;   //输出12.35
    	
    	float pi=3.14159;
    	cout<<pi<<endl;   //输出3.14
    	
    	return 0;
    }
    

    2.setprecision(n)
       功能:控制浮点数显示的有效数字个数。

    图中可以看出,只用setprecision(n)是控制保留几位有效数字的。

    • 由8-9两行代码可以看出,也是只写一次就可以。
    • 8-10行可以看出,只是四舍五入修改了数字的显示方法,并不是修改原数字。从常识我们可以知道,如果12.345数字本身改变,那就是两位有效数字变为 12,那从两位有效数字改为四位有效数字会变为 12.00,而不是12.34。
    • 11-12行可以看出如果要保留的太多,是不会补上0的(往下看有补0的方法)。
    • 13行中可以看出,如果小数点前的位数多于你要保留位数,则会使用科学计数法。
      这里写图片描述

    2.5补充一小点showpoint
      这里写图片描述
      这是在尝试过程中发现的一个无聊操作,如果12.34保留两位有效数字,会显示12,但是你可以经过这个操作让它显示12. 哈哈哈哈哈哈哈注意有个“.”ヽ(•̀ω•́ )ゝ!

    	double s=12.345;
    	cout<<s<<endl;   //输出原数12.345
    	cout<<setprecision(2);
    	cout<<s<<endl;   //输出保留两位有效数字12
    	cout.setf(ios::showpoint);//或者写cout<<setiosflags(ios::showpoint);
    	cout<<s<<endl;   //输出保留两位有效数字外加一个小数点12.
    

    3.fixed
      setprecision(n)和fixed合用的话可以控制小数点后有几位。
      只要加上以下任意一个语句就可以。

    cout<<setiosflags(ios::fixed);
    cout.setf(ios::fixed);
    cout<<fixed;
    

    然后你会发现,如果你要保留的位数多于数字原来的小数,就会补上0。
    这里写图片描述


    _(:3 」∠) 我是萝莉安,梦想是做个程序媛……

    有CSDN账号的帮我点个赞或者评论一下吧,不愿意也不强求啦。
    你们点赞评论我才会得积分,才会升等级,等级高了才能给博客换好看的皮肤🥰🥰

    展开全文
  • Android EditText保留两位小数

    千次阅读 2014-09-15 15:18:50
    Android EditText保留两位小数
    double d = 3.1465926;
    String result = String.format("%.2f", d);
    System.out.println(result); 

    展开全文
  • PHP保留两位小数

    千次阅读 2017-12-21 16:17:48
    我们在项目里经常需要保留小数位数,比如显示金额的时候通常需要保留两位小数位数,除了可以在设计数据库的时候将金额字段设置为decimal(n,2)形式的,通过PHP也可以处理小数数位,PHP中可以处理数字的函数很多,就...
  • 只需设置对应的正则表达式即可,我这里设置的是n2意思就是两位小数的意思 效果如下
  • java保留两位小数

    千次阅读 2019-08-09 11:32:03
    java保留两位小数 1.使用java类库中自带的DecimalFormat类,使数字输出结果保留2位小数 代码如下: 运行结果如下: 2. 输出结果: String.format表示字符串的格式化 3.使用BigDecimal四舍五入方法 需要导入...
  • 记录下js中如何将小数转换百分数并保留两位小数的方法。 function format(point) { const formated = Number(point*100).toFixed(2); return `${formated}%` }
  • java long保留两位小数

    万次阅读 2019-03-22 11:32:02
    java long保留两位小数 在java中long是长整型,如果想在计算过程中保留两位小数可以将long转为double类型在用String.format就可以了。 //计算时间差 long start = Utils.convertTimeToLong(mTvStartTime.getText...
  • 如果有两位小数点   return [ NSString stringWithFormat : @"%.2f 万 " ,numberFloat];  }  } } + ( NSString *)decimalwithFormat:( NSString *)format float:( ...
  • sql avg后保留两位小数

    千次阅读 2019-07-10 10:40:28
    保留两位小数 select st_area, round(avg(st_score),2) from student AVG(st_score)求得平均数 round(AVG(st_score),2),对平均数四舍五入保留两位小数 当平均数多余两位时才进行四舍五入保存两位...
  • BigDecimal 保留两位小数

    万次阅读 2019-01-11 14:03:31
    java保留两位小数5种方法 四舍五入,例: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public class format { double f = 111231.5585; public void m1() {...
  • el表达式保留两位小数、使用jstl fmt formatNumber标签保留两位小数
  • python中保留两位小数或者多位小数的方法

    万次阅读 多人点赞 2019-01-28 17:24:07
    round(a,2)=12.35 保留两位小数 round(a,2)=12.35 保留三位小数 方法2, 例如: a=12.34567889 print(“%.2f”%a) 保留两位小数 print(“%.3f”%a) 保留三位小数 print(“%.4f”%a) 保留四位小数 方法3, 首先...
  • 1. 简单的方法 四舍五入 var num =2.446242342;...2.四舍五入保留2位小数(若第二位小数为0,则保留一位小数) function keepTwoDecimal(num) { var result = parseFloat(num); if (isNaN(result)) { alert('
  • Sql 保留两位小数

    万次阅读 2019-05-16 17:51:25
    使用 Round() 函数,如 Round(number,2) ,其中参数2表示保留两位有效数字,但是只负责四舍五入到两位小数,但是不负责截断 例如 ROUND(3.141591653, 2) 得到3.140000000; 使用 Convert(decimal(10,2),number) ...
  • python保存两位小数的几种方法

    万次阅读 2019-04-09 17:50:53
    python保存两位小数的几种方法文章目录:一、保留两位小数 且 做四舍五入处理1、使用字符串格式化2、使用python内置的round() 函数3、使用python内置的decimal模块二、保留两位小数 且 不做四舍五入处理1、使用序列...
  • 保留n位小数小数(默认保留两位小数
  • js强制保留两位小数

    万次阅读 2017-12-25 16:35:25
    现在想要做的是无论是整数还是多位小数,强制保留两位小数 1. 转为字符串,对字符串进行操作 //强制保留2位小数,如:2,会在2后面补上00.即2.00  function toDecimal2(x) {   var f = parseFloat(x);   ...
  • double保留两位小数

    千次阅读 2018-03-09 15:26:29
    摘要:如题,如何是double保留两位小数.因为这方面用的不多,所以每当用的时候总是会忘记,所以决定还是备份一下。话不多说,直接推荐一种自己认为比较好用的套路:DecimalFormatpublic static void main(String[] ...
  • Java 保存两位小数

    千次阅读 2018-10-24 10:53:30
    在Java开发过程中,我们经常会遇到需要保留double类型的数字的位数问题,这里以保存两位小数为例,阐述一下Java开发中,保留小数点后小数位数问题的几种做法。 做法(1)使用DecimalFormat类 用0.00表示保存两位小数...
  • VC++浮点数四舍五入保留两位小数VC++浮点数四舍五入保留两位小数
  • Java中保留两位小数

    万次阅读 2019-09-09 19:53:05
    保留两位小数 //s2是要保留两位小数的数,%.2f 指的是保留两位小数 double s1 = String.format("%.2f",s2)
  • 保留两位小数

    千次阅读 2017-05-03 15:56:39
    保留两位小数。 1,四舍五入后保留两位小数 2.4556.toFixed(2) ---2.46 2,直接截取两个小数不四舍五入   var toDecimal2 = function(x) {  var str = "" + x;  if(str == null || str == "0") return "0.00";...
  • hive-sql查询结果保留两位小数

    万次阅读 多人点赞 2019-04-22 09:58:29
    需求要求保留4位小数,查博客大多是sql用法,但是hive-sql和sql还是有区别的,不知道大家发现没有,hive里有个自动转整的功能,示例 sql里 SELECT 1.0;...hive-sql里截取两位小数的语句 round(2.456,2) ...
  • JS保留最多两位小数

    千次阅读 2019-11-14 17:03:04
    Math.round(num * 100) / 100 原理就是: Math的round方法是取到整数的四舍五入. 乘以100, 相当于取到小数点后两位的四舍五入近似数. 再除以一百, 如果有小数的, 就会保留小数位, 没有小数的, 就直接显示整数 ...
  • js保留两位小数方法总结

    千次阅读 2018-06-11 15:19:10
    本篇文章给大家总结了js保留两位小数的各种方法以及每种方法的实例代码分析,如果大家对此有需要,一起来学习下js保留两位小数的方法吧。本文是小编针对js保留两位小数这个大家经常遇到的经典问题整理了在各种情况下...
  • DevExpress TextEdit如何设置文本输入框只能输入两位小数,当输入第三位的时候,输不进去。![图片说明](https://img-ask.csdn.net/upload/201806/14/1528967633_510390.png)
  • 先把数字转换保留两位小数, 然后转换字符串, 然后 拼接上百分号 cast(cast(today as decimal(10,2)) as varchar )||'%'
  • Python保留两位小数

    千次阅读 2018-08-01 10:45:19
    &gt;&gt;&gt; a = 5.026 &gt;&gt;&gt; b = 5.000 ...#round()浮点数四舍五入以及设定其小数位数 ...的使用,点数后精度,此时精度2 &gt;&gt;&gt; "%.2f&

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 236,231
精华内容 94,492
关键字:

如何设置为两位小数