oracle函式 關於處理小數點位數

2021-06-03 21:10:50 字數 1567 閱讀 3512

1.取四捨五入的幾位小數

1.1   round函式        

round(n+0.5, m)

比如, 取兩位的話:

round(15.333 + 0.005, 2)

1.2   cast函式

cast(value as decimal(n,k))

其中n表示擷取後的總位數,k表示小數點後保留幾位

以上兩個函式的用法樣例:

樣例資料庫表aa:

--------------------------------

value

1.5236

2.3658

在執行select round(value,2) v1,cast(value as decimal(20,2)) v2 from aa 後,執行結果為:

--------------------------------

v1                     v2

1.52                  1.52              

2.37                 2.37

2.只保留小數

eg:保留兩位小數,只舍

zhang@zhang>select trunc(1.2345, 2) from dual;

trunc(1.2345,2)

---------------

1.23

zhang@zhang>select trunc(1.2399, 2) from dual;

trunc(1.2399,2)

---------------

1.23

3.這個比較全了

返回大於或等於x的最大整數:   

sql>         select         ceil(23.33)         from         dual;   

ceil(23.33)   

-----------   

24   

返回等於或小於x的最大整數:   

sql>         select         floor(23.33)         from         dual;   

floor(23.33)   

------------   

23   

返回捨入到小數點右邊y位的x值:rcund(x,[y])   

sql>         select         round(23.33)         from         dual;   

round(23.33)   

------------   

23   

返回截尾到y位小數的x值:trunc(x,[y])   

sql>         select         trunc(23.33)         from         dual;   

trunc(23.33)   

------------   

23   

oracle函式 關於處理小數點位數

1.返回大於或等於x的最大整數 sql select ceil 23.33 from dual ceil 23.33 24 2.返回等於或小於x的最大整數 sql select floor 23.33 from dual floor 23.33 23 3.返回四捨五入到小數點右邊y位的x值 rcun...

關於處理小數點位數的幾個oracle函式

quote b 1.取四捨五入的幾位小數 b select round 1.2345,3 from dual 結果 1.235 b 2.保留兩位小數,只舍 b select trunc 1.2345,2 from dual 結果 1.23 select trunc 1.2399,2 from dua...

js小數點處理

現實開發當中,我們總是會遇到 金額計算 問題,我們本以為js中0.1 0.2 0.3,結果0.300000000000000004,所以我們顯示金額數值的時候,經常會不准,測試經常會提這樣有多個小數點的bug,遇到這樣的問題我們該怎麼辦?解決辦法 把小數先裝成整數計算。比如 0.1 100 0.2 ...