Sql 獲取向上取整、向下取整、四捨五入取整

【四捨五入取整截取】 select    round(54.6,0)    返回55ide

【向下取整截取】        select    floor(54.6)         返回54函數

【向上取整截取】        select    ceiling(54.3)      返回55ci

--MSSQL取整函數的使用ast

--兩個整數相除將截斷小數部分 
select 3/4,4/3,5/3 
--結果 0,1,1 
 
--返回大於或等於所給數字表達式的最小整數 
SELECT CEILING(123.55), CEILING(123.45),CEILING(-123.45), CEILING(0.0) 
--結果 124,124,-123,0 
 -- www.2cto.com  
--四捨五入 round(a,b) -- 結果a 精確到小數點右 b位,或是左 -b位
select round(54.36,-2), round(54.36,-1),round(54.36,0), round(54.36,1),round(54.36,2) 
--結果 100.00,50.00,54.00,54.40,54.36 
 
---四捨五入 並轉化爲 整數 
select cast(round(56.361,0) as int),cast(round(56.561,0) as int) 
--結果 56,57 
 
--舉例使用 
 
---兩個整數相除 捨棄小數部分( 所有都向前進位) 
declare @dividend decimal(20,2), @divisor decimal(20,2) 
 
set @dividend=3 
set @divisor=4 
select CEILING(@dividend/@divisor) 
--結果 1 
 
set @dividend=4 
set @divisor=3 
select CEILING(@dividend/@divisor) 
--結果 2 
 
set @dividend=5 
set @divisor=3 
select CEILING(@dividend/@divisor) 
--結果 2 


---兩個整數相除 四捨五入到整數 
set @dividend=3 
set @divisor=4 
select cast(round(@dividend/@divisor,0) as int) 
--結果 1 
 
set @dividend=4 
set @divisor=3 
select cast(round(@dividend/@divisor,0) as int) 
--結果 1 
 
set @dividend=5 
set @divisor=3 
select cast(round(@dividend/@divisor,0) as int) select

--結果 2im

 

 【四捨五入取整截取】di

select round(54.56,0)vi

【向下取整截取】co

SELECT FLOOR(54.56)cas

 

【向上取整截取】

 SELECT   CEILING(13.15) 

相關文章
相關標籤/搜索