在 Oracle PL/SQL 中,
若要將數字進行格式化,
必須利用 to_char 將數字(Number) 轉換成字串(Char),
若 "數字的整數位長度" > "格式化的整數位長度, 則結果會以 # 表示.
若 "數字的整數位長度" < "格式化的整數位長度", 則結果的左邊會自動補空白表示, 此時可用 ltrim 去除之.
若 "數字的小數位長度" > "格式化的小數位長度, 則結果會自動四捨五入.
若 "數字的小數位長度" < "格式化的小數位長度, 則結果的右邊會自動補零.
如下範例 :
程式碼
-- 執行結果: ######
select ltrim(to_char(12345.678, '9,990'))
from dual
-- 執行結果: #########
select ltrim(to_char(12345.678, '9,990.99'))
from dual
-- 執行結果: 12,346
select ltrim(to_char(12345.678, '9,999,999,999,990'))
from dual
-- 執行結果: 12,345.68
select ltrim(to_char(12345.678, '9,999,999,999,990.99'))
from dual
-- 執行結果: $12,346
select ltrim(to_char(12345.678, '$9,999,999,999,990'))
from dual
-- 執行結果: $12,345.68
select ltrim(to_char(12345.678, '$9,999,999,999,990.99'))
from dual