MySQL:如何對數據庫中數據保留小數
1、round(x,d) :四捨五入
round(x,d)函數用於數據的四捨五入,round(x) ,其實就是round(x,0),也就是默認d爲0。
注意:d可以是負數,這時是指定小數點左邊的d位整數位爲0,同時小數位均爲0;
SELECT ROUND(100.3465,2); ->100.35
SELECT ROUND(100,2); ->100
SELECT ROUND(0.6,2); ->0.6
SELECT ROUND(114.6,-1); ->110
2、truncate(x,d):截取
truncate(x,d)函數返回被捨去至小數點後d位的數字x。若d的值爲0,則結果不帶有小數點或不帶有小數部分。若d設爲負數,則截去(歸零)x小數點左起第d位開始後面所有低位的值。
SELECT TRUNCATE(100.3465,2); ->100.34
SELECT TRUNCATE(100,2); ->100
SELECT TRUNCATE(0.6,2); ->0.6
SELECT TRUNCATE(114.6,-1); ->110
3、format(x,d):
format(x,d)函數強制保留D位小數,整數部分超過三位的時候以逗號’,'分割,並且返回的結果是string類型的
SELECT FORMAT(100.3465,2); ->100.35
SELECT FORMAT(100,2); ->100.00
SELECT FORMAT(100.6,2); ->100.60
4、convert(value,type):
convert(value,type)函數用於類型轉換,相當於截取。
type可選類型如下:
二進制,同帶binary前綴的效果 : BINARY
字符型,可帶參數 : CHAR()
日期 : DATE
時間: TIME
日期時間型 : DATETIME
浮點數 : DECIMAL
整數 : SIGNED
無符號整數 : UNSIGNED
SELECT CONVERT(100.3465,DECIMAL(10,2)); ->100.35
SELECT CONVERT(100,DECIMAL(10,2)); ->100
SELECT CONVERT(100.4,DECIMAL(10,2)); ->100.4