码迷,mamicode.com
首页 > 数据库 > 详细

mssql sqlserver 取消数值四舍五入的方法分享

时间:2018-06-15 17:47:59      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:lint   数据表   注意事项   参数   缺省值   targe   缺省   正数   class   

 
摘要:
下文讲述使用round sql函数,对数值型数据进行舍入操作
实验环境:sqlserver 2008

转自: http://www.maomao365.com/?p=6454



最近接到用户需求,需对数值型数据,无论后面数据多少,直接进行舍入操作,左思右想,终于发现了round函数可以满足此操作。
--------------------------------------------------
round函数舍入特性介绍:
round语法介绍:
round(数据表达式,长度[,操作方式])
----------------------
参数说明:
数据表达式:
接收一个tinyint、int、bigint、decimal、numeric、money、smallmoney、float、real
长度:
此参数须为tinyint int smallint类型
round函数舍入的精度
操作方式:
此参数须为tinyint int smallint类型
缺省值:为0,如果输入其它值,则将截断“数据表达式”
----------------------
返回值说明:
tinyint返回int
int 返回int
bigint 返回bigint
decimal numberic 返回decimal numberic
money smallmoney返回money
float real 返回float
-----------------------
<span style="color:red;">
注意事项:
当"长度"为正数时,则将小数点后舍入的位数
当"长度"为负数时,则将小数点前舍入的位数
</span>
 -----------------------------------------------------
round应用举例:

SELECT ROUND(8989.3652, 2), --小数位后保留2位,四舍五入
ROUND(8989.3652, -2),--小数位前舍入2位,四舍五入
---小数位全部舍入,四舍五入
ROUND(8956.34, 0),ROUND(8956.65, 0),ROUND(8956.25, 0), 
---截断数据舍入位置后的数据
ROUND(16081.83,0,-2), ROUND(16081.83,0,1), ROUND(16081.83,0,5),
ROUND(16081.835,2,8), ROUND(16081.836,-2,6), ROUND(16081.83,-2,7)
go

---例:sql取消四舍五入方法分享
---丢失小数位后两位,并不进行四舍五入操作
select round(8989.999,2,9)

 

mssql sqlserver 取消数值四舍五入的方法分享

标签:lint   数据表   注意事项   参数   缺省值   targe   缺省   正数   class   

原文地址:https://www.cnblogs.com/lairui1232000/p/9188286.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!