中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣解決4種databases PMSO 在精度計算中的問題

發布時間:2021-12-06 11:23:34 來源:億速云 閱讀:100 作者:柒染 欄目:大數據

本篇文章為大家展示了怎樣解決4種databases PMSO 在精度計算中的問題,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

1  Oracle 中的計算,不同的位置的計算會造成最終的結果不同的問題,請見下圖

怎樣解決4種databases PMSO 在精度計算中的問題

2 官方給出的解答是,直接計算會返回不具有IEEE 754 方式的四舍五入的浮點算法。

3 官方推薦的正確計算方式是,添加 to_number的方式,來進行相關的數值計算后,
在進行四舍五入的計算,這樣獲得的值,則不會像上面一樣,會有different values 的
存在。

怎樣解決4種databases PMSO 在精度計算中的問題

4 這樣的問題在 SQL SERVER 中存在不存在,答案是存在,并且更難搞
首先我們照搬上面的計算,圖中很清楚的看到,結果和ORACLE 不同如初一轍

怎樣解決4種databases PMSO 在精度計算中的問題

我們按照慣性思維的方式,我們用ORACLE 同樣的方式來處理看看結果怎么樣

怎樣解決4種databases PMSO 在精度計算中的問題

結果和ORACLE 不同,即使使用雙精度的數字進行計算還是造成計算順序不同,而值不同的情況,

則解決的方法有兩個

方法1  多添加保留位,在圖中我們可以看到,結果是一致的,但我想很多開發的同學都不大會滿意

怎樣解決4種databases PMSO 在精度計算中的問題

方法2 使用menoy類型來進行變換,結果是一致的

怎樣解決4種databases PMSO 在精度計算中的問題

那如果此種情形發生在MYSQL 數據庫中呢?
同樣 MYSQL 中存在同樣的問題

怎樣解決4種databases PMSO 在精度計算中的問題

這里MYSQL的處理方式稍微不同,雖然我們添加了 decimal 但如果還是保留2位小數,則結果還是不對,這里比需要的值多保留一位,則結果就一致了。

怎樣解決4種databases PMSO 在精度計算中的問題

最后,PostgreSQL 怎么來進行下面的事情

在眾多的數據庫中,只有POSTGRESQL 給出了事情的真相,順序不同計算的結果是不同的

怎樣解決4種databases PMSO 在精度計算中的問題

在Postgresql 中可以通過類似MYSQL 的方式進行計算等式的修改后,兩種計算獲得同樣的計算結果

怎樣解決4種databases PMSO 在精度計算中的問題

上述內容就是怎樣解決4種databases PMSO 在精度計算中的問題,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绥德县| 许昌县| 沾化县| 绿春县| 昌江| 封丘县| 特克斯县| 吴堡县| 张家界市| 云和县| 和政县| 乌海市| 尤溪县| 方山县| 赣州市| 甘洛县| 林周县| 拉孜县| 克什克腾旗| 安新县| 莲花县| 海安县| 临朐县| 体育| 屏东市| 盐池县| 衡水市| 根河市| 曲沃县| 略阳县| 团风县| 郓城县| 固原市| 福鼎市| 莱阳市| 铁岭市| 鞍山市| 中卫市| 体育| 淳化县| 灵璧县|