新聞中心
sqlserver里有沒有取整的函數(shù)
參數(shù)
成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供肇東網(wǎng)站建設(shè)、肇東做網(wǎng)站、肇東網(wǎng)站設(shè)計、肇東網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、肇東企業(yè)網(wǎng)站模板建站服務(wù),10多年肇東做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
numeric_expression
精確數(shù)字或近似數(shù)字?jǐn)?shù)據(jù)類型類別的表達(dá)式(bit 數(shù)據(jù)類型除外)。
length
是 numeric_expression 將要四舍五入的精度。length 必須是 tinyint、smallint 或int。當(dāng) length 為正數(shù)時,numeric_expression 四舍五入為 length 所指定的小數(shù)位數(shù)。當(dāng) length 為負(fù)數(shù)時,numeric_expression 則按 length 所指定的在小數(shù)點的左邊四舍五入。
function
是要執(zhí)行的操作類型。function 必須是 tinyint、smallint 或 int。如果省略 function 或 function 的值為 0(默認(rèn)),numeric_expression 將四舍五入。當(dāng)指定 0 以外的值時,將截斷 numeric_expression。
例:
Select ROUND(150.75, 0)
151.00
Select ROUND(150.75, 0, 1)
150.00
FLOOR
返回小于或等于所給數(shù)字表達(dá)式的最大整數(shù)。
FLOOR(1.1)=1
FLOOR(2)=2
CEILING
返回大于或等于所給數(shù)字表達(dá)式的最小整數(shù)。
CEILING(1.1)=2
CEILING(2)=2
如果要四舍五入:
cast(round(1.6,0) as int) =2
cast(round(1.4,0) as int)=1
cast(round(2,0) as int)=2
sqlserver 中保留小數(shù)點后多少位,用round
round返回數(shù)字表達(dá)式并四舍五入為指定的長度或精度。
顯示的界面上要求只保留到小數(shù)點后4位,發(fā)現(xiàn)round(表達(dá)式,4,1)可以截斷小數(shù)點4位后的數(shù)字
如果寫(round,4)表示對小數(shù)點后4位四舍五入,但不截斷多的0
sql server 2008 整數(shù)相除四舍五入
sql server 2008 整數(shù)相除需要除數(shù)或被除數(shù)有一個數(shù)據(jù)類型為小數(shù),才可以四舍五入。
首先看一個例子,如圖:
兩條語句唯一區(qū)別就是 10 與 10.00
1、select cast(round(10/6,0) as int) ? ? ? 結(jié)果:1
2、select cast(round(10.00/6,0) as int) ?結(jié)果:2
但結(jié)果確不一樣。
原因是SQLserver有默認(rèn)的數(shù)據(jù)類型轉(zhuǎn)換。
10/6 默認(rèn)轉(zhuǎn)換為整型 即:10/6 = 1。那么 round(1) = 1
10.00/6 默認(rèn)轉(zhuǎn)換為小數(shù)即:10.00/6 = 1.666666 ,那么 round(1.666666,0) = 2
當(dāng)前文章:包含sqlserver舍入的詞條
當(dāng)前鏈接:http://fisionsoft.com.cn/article/dscedsd.html