国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle數據庫百分比格式化的解決方案

2024-08-29 13:52:12
字體:
來源:轉載
供稿:網友
問題:需要對在Oracle數據庫中查詢出來的數值進行比率的計算。類似于如下的SQL:

Select Round((discount/Amount),2) from dual;

這樣算出來的數字可以滿足絕大部分的需求。但是對于不到1的數字,問題出來了......顯示的類似于 .45樣子的數據。0.45前面的0不見了。

以下總結了兩種方法來解決缺0的問題。

第一種解決方法:

SELECT DECODE (TRUNC (1/100),0, REPLACE (1/100, '.', '0.'),TO_CHAR (1/100))FROM DUAL;

大家只要在1/100的地方替換成自己需要的百分數就可以了。

第二種解決方法:

SELECT RTrim(To_Char(1/100,'FM99999999990.9999'),'.') FROM dual;

替換方式和上面相同。

兩種方式的詳細比較:

第一種公式比較復雜,但可以處理通用的數值。

第二種看起來簡單,不過格式化的值的位數一定要大于計算的位數才行。比如 SELECT RTrim(To_Char(200,'FM90.9999') ,'.') FROM dual; 顯示的就是########,因為已經超過了格式化的范圍。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洛浦县| 新郑市| 久治县| 洞口县| 肃宁县| 仁寿县| 六枝特区| 邹城市| 汝阳县| 昂仁县| 谢通门县| 丹寨县| 武威市| 彭州市| 竹北市| 天门市| 巨野县| 海伦市| 辛集市| 永吉县| 宣武区| 张家界市| 滦南县| 元朗区| 历史| 敖汉旗| 临海市| 通州市| 阳信县| 泰宁县| 额济纳旗| 古田县| 巢湖市| 呼伦贝尔市| 尉犁县| 江津市| 兰州市| 松原市| 清流县| 扎兰屯市| 夏邑县|