Oracle數(shù)據(jù)庫中保留小數(shù)點后兩位的問題解讀
更新時間:2024年09月20日 10:19:59 作者:無間行者
在Oracle數(shù)據(jù)庫中,對數(shù)字和百分比進行格式化,以保留兩位小數(shù),主要使用to_char()函數(shù),對于大數(shù)字如10000000.12,使用to_char(字段名, 'FM99999999999990.00')可確保保留兩位小數(shù)而無額外空格,對于百分比如86.63%
Oracle數(shù)據(jù)庫中保留小數(shù)點后兩位的問題
1.數(shù)字保留兩位小數(shù)
(小數(shù)點左側(cè)數(shù)字可能比較大,比如10000000.12)
to_char() 函數(shù)轉(zhuǎn)換
答案
select trim(to_char(85.7323232, '9999999990.00')) as 兩位小數(shù) from dual;

寫法對比
select result,
to_char(result, '9999.99') as "位數(shù)不足",
to_char(result, '9999999999.99') as "位數(shù)充足",
to_char(result, '0000.00') as "0的位數(shù)不足",
to_char(result, '0000000000.00') as "0的位數(shù)充足",
to_char(result, '9999999990.00') as "9的位數(shù)充足",
trim(to_char(result, '9999999990.00')) as "9的位數(shù)充足且去掉左側(cè)"
from (
select 0 result from dual union
select 1 result from dual union
select 123 result from dual union
select 123.4 result from dual union
select 12345.67 result from dual union
select 12345678.2 result from dual
)2.百分比保留兩位小數(shù)
(小數(shù)點左側(cè)數(shù)字數(shù)字小于等于100,比如86.63%)
答案
select trim(to_char(0.7323232 * 100, '99990.99'))||'%' as 百分比 from dual;

select trim(to_char(0.7323232 * 100, '99990.99'))||'%' as 百分比 from dual;

寫法對比
select result,
to_char(result * 100, '99.99') || '%' as "9位數(shù)不足",
to_char(result * 100, '00.99') || '%' as "0位數(shù)不足",
to_char(result * 100, '99990.99') || '%' as "百分比",
trim(to_char(result * 100, '99990.99')) || '%' as "去左側(cè)空格的百分比",
to_char(result * 100, 'fm99990.99') || '%' as "使用fm前綴的格式百分比",
to_char(result * 100, 'fm99990.00') || '%' as "使用fm前綴的格式百分比2"
from (
select 0 result from dual union
select 1 result from dual union
select 0.12345 result from dual union
select 0.2 result from dual union
select 0.23 result from dual union
select 0.234 result from dual union
select 0.2345 result from dual union
select 0.23454 result from dual union
select 0.23456 result from dual
)總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
在Oracle數(shù)據(jù)庫表中加載多個數(shù)據(jù)文件的方法詳解
這篇文章主要給大家介紹了在Oracle數(shù)據(jù)庫表中加載多個數(shù)據(jù)文件的方法,本文中,我將展示 SQL 加載器 + Unix 腳本實用程序的強大功能,其中 SQL 加載器可以使用自動 shell 腳本加載多個數(shù)據(jù)文件,需要的朋友可以參考下2024-01-01
Linux下通過腳本自動備份Oracle數(shù)據(jù)庫并刪除指定天數(shù)前的備份
這篇文章主要介紹了Linux下自動備份Oracle數(shù)據(jù)庫并刪除指定天數(shù)前的備份,需要的朋友可以參考下2015-07-07
Oracle導(dǎo)出文本文件的三種方法(spool,UTL_FILE,sqluldr2)
這篇文章主要介紹了Oracle導(dǎo)出文本文件的三種方法(spool,UTL_FILE,sqluldr2),需要的朋友可以參考下2023-05-05
Oracle系列學(xué)習(xí)之Oracle正則表達式詳解
正則表達式應(yīng)用廣泛,在數(shù)據(jù)庫中也有很大的應(yīng)用空間,這篇文章主要給大家介紹了關(guān)于Oracle系列學(xué)習(xí)之Oracle正則表達式的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2023-12-12

