Oracle的數字格式可以使用「TO_CHAR」或是「TO_DATE」來顯示。
Oracle常用的數字格式如下:

 

格式 描述 範例
. 顯示小數點 select to_char(123.68,'99999.9') from dual;
-->   123.7
, 顯示分隔符號「,」,如使用「,」做為分隔符號,則小數點必須用「.」 select to_char(123123.68,'999,999.99') from dual;
--> 123,123.68
D 顯示預設的小數點符號【預設為「.」】 select to_char(123.68,'99999D99') from dual;
-->   123.68
G 顯示預設的分隔符號【預設為「,」】,如使用「G」做為分隔符號,則小數點必須用「D」 select to_char(123123.68,'999G999D99') from dual;
--> 123,123.68
9 數字格式完全以設定的格式來顯示,多餘的部份以「空白」顯示 select to_char(123.68, '9999999.99') from dual;
-->     123.68
0 數字格式完全以設定的格式來顯示,多餘的部份以「0」顯示 select to_char(123.68, '0999999.99') from dual;
--> 0000123.68
FM 以所設定的格式來顯示,多餘的部直接隱藏 select to_char(123.68, 'FM9999999.99') from dual;
-->123.68
$ 於顯示的數值前端加上「$」 select to_char(123.68, '$999.99') from dual;
--> $123.68
B 如數值為0時,不予以顯示,只顯示大於1的數值,其餘依原設設格式 select to_char(0.58, 'B99999') from dual;
-->     1
select to_char(0.25, 'B99999') from dual;
-->
S 顯示數值的「+」、「-」符號,可放置於數值前或後 select to_char(123.68, 'S99999.99') from dual;
-->  +123.68
select to_char(-123.68, 'S99999.99') from dual;
-->  -123.68
select to_char(123.68, '99999.99S') from dual;
-->  123.68+
PR 如數值為正值,則前後加上空白;如數值為負值,則在該數值前後加上「<>」,該格式需放置於格式後面 select to_char(-123.68, '99999.99PR') from dual;
-->  <123.68>
select to_char(123.68, '99999.99PR') from dual;
-->   123.68
MI 如數值為正值,則於尾端加上空白,如數值為負值,則於尾端加上「-」號,該格式需放置於格式後面 select to_char(123.68, '99999.99MI') from dual;
-->  123.68
select to_char(-123.68, '99999.99MI') from dual;
-->  123.68-
RN或rn 顯示羅馬數字,「RN」顯示大寫羅馬數字,「rn」顯示小寫羅馬數字 select to_char(1, 'RN') from dual;
-->              I
select to_char(123.68, 'RN') from dual;
-->          CXXIV
select to_char(123.68, 'rn') from dual;
-->          cxxiv
C 返回ISO預設的指定標識符號 select to_char(123.68,'C999999.99') from dual;
-->        TWD123.68
U、L 顯示該國預設的金錢符號,U與L類似,皆可放置於格式前或後 select to_char(123.68,'L999999.99') from dual;
-->           NT$123.68
select to_char(123.68,'U999999.99') from dual;
-->           NT$123.68
select to_char(123.68,'999999.99L') from dual;
-->           123.68NT$
EEEE 顯示科學標記數字符號 select to_char(123.68,'9EEEE') from dual;
-->  1E+02
TM或TME 標準數值與科學數值轉換,「TME」:將標準數值轉換成科學數值
「TM」:將科學數值轉換成標準數值
該格式不可與其他數值格式同時使用
select to_char(123.68,'TME') from dual;
-->1.2368E+02
select to_char(1.2368E+02,'TM') from dual;
-->123.68
V 數值乘上(10的N次方) select to_char(123.68,'999999V999') from dual;
-->    123680
select to_char(123.68,'999999V000') from dual;
-->    123680
X 顯示16進位數值,只顯示正數數值,如數值非整數,則會自動四捨五入 select to_char(123,'XXX') from dual; -->  7B

arrow
arrow

    Condy Lin 發表在 痞客邦 留言(0) 人氣()