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


 
摘要:
下文講述使用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)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM