首頁  >  文章  >  資料庫  >  mysql怎麼實現除法保留兩位小數

mysql怎麼實現除法保留兩位小數

青灯夜游
青灯夜游原創
2022-01-06 14:34:2035216瀏覽

mysql除法保留兩位小數的方法:1、利用「DECIMAL(P,D)」函數,語法「convert(值1/值2,decimal(15,2))」;2、利用TRUNCATE()函數,語法「TRUNCATE(值1/值2,2)」。

mysql怎麼實現除法保留兩位小數

本教學操作環境: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屬性加入到欄位。

測試案例:

資料庫的表格結構

mysql怎麼實現除法保留兩位小數

mysql怎麼實現除法保留兩位小數

第一種計算方式:

select convert(t/100,decimal(15,2)) as money from test

mysql怎麼實現除法保留兩位小數

select convert(t/100,decimal(10,2)) as money from test

mysql怎麼實現除法保留兩位小數

#第二種計算方式

傳回數字X,截斷到D小數位。如果D為0,結果沒有小數點或小數部分。 D是負數,導致值X的小數點左邊的D數字變成零。 (簡單說就是沒有四捨五入)

SELECT TRUNCATE(t/100,2) as g from test

mysql怎麼實現除法保留兩位小數

TRUNCATE(x,d):函數傳回被捨去到小數點後d位元的數字x。若d的值為0,則結果不帶有小數點或不帶有小數部分。若d設為負數,則截去(歸零)x小數點左起第d位元開始後面所有低位的值。

【相關推薦:mysql影片教學

#

以上是mysql怎麼實現除法保留兩位小數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn