mysql除法保留兩位小數的方法:1、利用「DECIMAL(P,D)」函數,語法「convert(值1/值2,decimal(15,2))」;2、利用TRUNCATE()函數,語法「TRUNCATE(值1/值2,2)」。
本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。
在工作中會遇到計算小數而且需要顯現出小數末尾的0,我們會用到DECIMAL這個函數,這是一個函數非常強悍:具體用法DECIMAL(P,D)
;
在上面的語法:
P是表示有效數字數的精確度。 P範圍為1〜65。
D是表示小數點後的位數。 D的範圍是0~30。 MySQL要求D小於或等於(
DECIMAL(P,D)
表示列可以儲存D位元小數的P位數。十進制列的實際範圍取決於精度和刻度。
與INT資料型別一樣,DECIMAL型別也具有UNSIGNED和ZEROFILL屬性。如果使用UNSIGNED屬性,則DECIMAL UNSIGNED的資料列將不接受負值。
如果使用ZEROFILL,MySQL會將顯示值填入0以顯示由列定義指定的寬度。另外,如果我們對DECIMAL欄位使用ZERO FILL,MySQL將自動將UNSIGNED屬性加入到欄位。
測試案例:
資料庫的表格結構
第一種計算方式:
select convert(t/100,decimal(15,2)) as money from test
select convert(t/100,decimal(10,2)) as money from test
#第二種計算方式
傳回數字X,截斷到D小數位。如果D為0,結果沒有小數點或小數部分。 D是負數,導致值X的小數點左邊的D數字變成零。 (簡單說就是沒有四捨五入)
SELECT TRUNCATE(t/100,2) as g from test
TRUNCATE(x,d)
:函數傳回被捨去到小數點後d位元的數字x。若d的值為0,則結果不帶有小數點或不帶有小數部分。若d設為負數,則截去(歸零)x小數點左起第d位元開始後面所有低位的值。
【相關推薦:mysql影片教學】
#以上是mysql怎麼實現除法保留兩位小數的詳細內容。更多資訊請關注PHP中文網其他相關文章!