1. 程式人生 > >Oracle中保留兩位小數

Oracle中保留兩位小數

在最近的專案開發中,有個業務需求是介面顯示的數字需要保留兩位小數,目前我想到的解決方法有兩種:
(1)在寫SQL的時候,直接保留兩位小數
(2)在java程式碼裡面將查詢出來的數進行格式化處理,保留兩位小數
先說第一種方案:在SQL中的處理
我使用的oracle資料庫,所以有3個函式可以選擇,分別是:
(1)ROUND(A/B,2)
ROUND()函式是會將計算結果進行四捨五入的,如果所需要的值需要進行四捨五入,就可以選擇這個函式,可以有一個引數,也可以有兩個引數;如果有兩個param,第一個是你的計算表示式,第二個是需要保留的小數位數。例子如下:

(2)TRUNC(A/B,2)
TRUNC()函式是不會將計算結果進行四捨五入的,如果所需要的值不需要進行四捨五入,就可以選擇這個函式,可以有一個引數,也可以有兩個引數;如果有兩個param,第一個是你的計算表示式,第二個是需要保留的小數位數。例子如下:

(3)TO_CHAR(A/B,’FM99990.99’)
TO_CHAR()是一個格式化函式,第一個引數是計算表示式,第二個引數是指定格式化的格式,如果保留兩位小數則小數點後寫兩個99,這裡的數字9代表的數字,也是一個佔位符,表示該位置上以後會是一個數字,為什麼小數點前面會是一個0,而不是9,是因為如果計算結果小於1,那麼只會顯示小數點和小數點之後的部分,前面的0會忽略掉