Sql 保留两位小数

SQL中字段保留两位小数:

  1. 使用 Round() 函数,如 Round(number,2) ,其中参数2表示保留两位有效数字,但是只负责四舍五入到两位小数,但是不负责截断
    例如 ROUND(3.141592653, 2) 结果为3.140000000;
  2. 使用 Convert(decimal(10,2),number) 实现转换,其中参数2表示保留两位有效数字 例如Convert(decimal(10,2),3.1415) 结果为3.14;
  3. 使用 cast(number as decimal(10,2)) 实现转换,其中参数2表示保留两位有效数字 例如cast(3.1415 as decimal(10,2)) 结果为3.14;
    备注:CAST与CONVERT都可以执行数据类型转换,且都默认实现了四舍五入

如果目标表的字段是decimal(10,4)型的,从源表查数据:select round(field,2) from sourcetable;sql查询的结果字段的小数位可能是2位,但是该数据插入目标表,字段的小数位数就是4位后面2位以0补充;
select decimal(field,10,2) from sourcetable;该数据插入目标表,字段的小数位就是2位

SQL中两个字段相除并加上%

select decimal(field1/field2*100,10,2) || '%' from tablename;
select round(field1/field2*100,2) || '%' from tablename;
select concat(round(field1/field2*100,2)  ,'%') from tablename;
发布了52 篇原创文章 · 获赞 7 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/hyfstyle/article/details/90054298