--0占位,9代表任意一个数字
SQL> SELECT TO_CHAR(123.45,'L000,999.99') FROM DUAL;
TO_CHAR(123.45,'L000,999.99')
-----------------------------
$000,123.45
--最后的.999保留3位小数,当.45不足3位时,补充0
SQL> SELECT TO_CHAR(123.45,'L000,999.999') FROM DUAL;
TO_CHAR(123.45,'L000,999.999')
------------------------------
$000,123.450
--FM去除前后的0,顶格显示
SQL> SELECT TO_CHAR(123.45,'FML000,999.999') FROM DUAL;
TO_CHAR(123.45,'FML000,999.999
------------------------------
$000,123.45
--去除货币符号后,前有空格后面补有0
SQL> SELECT TO_CHAR(123.45,'999,999.999') FROM DUAL;
TO_CHAR(123.45,'999,999.999')
-----------------------------
123.450
--FM删除了前面空格和后面的补充的0,但前面的0是强制占位0无法删除
SQL> SELECT TO_CHAR(123.45,'FM000,999.999') FROM DUAL;
TO_CHAR(123.45,'FM000,999.999'
------------------------------
000,123.45
----把000占位符改为999,FM前面的空格和后面的补位的0也去掉了
SQL> SELECT TO_CHAR(123.45,'FM999,999.999') FROM DUAL;
TO_CHAR(123.45,'FM999,999.999'
------------------------------
123.45
--FM去除空格和补位的0,$用来补充货币符号
SQL> SELECT TO_CHAR(123.45,'FM$999,999.999') FROM DUAL;
TO_CHAR(123.45,'FM$999,999.999
------------------------------
$123.45
--FM去除空格和补位的0,L用来补充本地货币符号,会自动根据自己的字符集补充!!!
SQL> SELECT TO_CHAR(123.45,'FML999,999.999') FROM DUAL;
TO_CHAR(123.45,'FML999,999.999
------------------------------
$123.45
--打印原表
SQL> select ename,sal,to_char(sal*3,'$999,999,999') from emp;
ENAME SAL TO_CHAR(SAL*3,'$999,999,999')
---------- --------- -----------------------------
SMITH 800.00 $2,400
ALLEN 1600.00 $4,800
WARD 1250.00 $3,750
JONES 2975.00 $8,925
MARTIN 1250.10 $3,750
BLAKE 2850.00 $8,550
CLARK 2450.00 $7,350
SCOTT 3000.00 $9,000
KING 5000.23 $15,001
TURNER 1500.00 $4,500
ADAMS 1100.00 $3,300
JAMES 950.55 $2,852
FORD 3000.00 $9,000
MILLER 1300.00 $3,900
--员工,姓名,薪水,薪水的3倍需要包含千位符和货币标识
SQL> select ename,sal,to_char(sal*3,'L999,999,999.99') from emp;
ENAME SAL TO_CHAR(SAL*3,'$999,999,999.99
---------- --------- ------------------------------
SMITH 800.00 $2,400.00
ALLEN 1600.00 $4,800.00
WARD 1250.00 $3,750.00
JONES 2975.00 $8,925.00
MARTIN 1250.10 $3,750.30
BLAKE 2850.00 $8,550.00
CLARK 2450.00 $7,350.00
SCOTT 3000.00 $9,000.00
KING 5000.23 $15,000.69
TURNER 1500.00 $4,500.00
ADAMS 1100.00 $3,300.00
JAMES 950.55 $2,851.65
FORD 3000.00 $9,000.00
MILLER 1300.00 $3,900.00