您好,登錄后才能下訂單哦!
本篇內容介紹了“mysql如何實現除法保留兩位小數”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
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小于或等于(<=)P。
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如何實現除法保留兩位小數”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。