oracle数字转为字符串


oracle数字转为字符串

.SQL> select ename,to_char(sal,'9999.000') salary from emp;
ENAME SALARY
---------- --------------------
SMITH 808.000
ALLEN 1608.000

SQL> select ename,to_char(sal,'$00099999000.00' ) salary from emp;
ENAME SALARY
---------- --------------------
SMITH $00000000808.00
ALLEN $00000001608.00

SQL> select ename,to_char(sal,'l99,999.000') salary from emp;
ENAME SALARY
---------- ------------------------------
SMITH $808.000
ALLEN $1,608.000

SQL> select ename,TO_char(sal,'9G999D99') salary from emp;
ENAME SALARY
---------- ------------------------------
SMITH 808.00

9是代表有多少宽度,如果不足会显示成######,0代表强制显示0,但不会改变你的结果。G是千
分符,D是小数点。
在数据库中16进制的表达是按照字符串来描述的,所以你想将十进制的数转换为十六进制的数使用
to_char函数。
select to_char(321,'xxxxx') from dual;
TO_CHAR(321,'XXXXX')
---------------------
141
其中xxxxx的位数要足够,不然报错,你就多写几个,足够大就可以。

二。数据类型的显式转换
 To_number,to_date
如果你想将十六进制的数转换为十进制的数请使用to_number函数。
SQL> select to_number('abc32','xxxxxxxx') from dual;
TO_NUMBER('ABC32','XXXXXXXX')
-----------------------------
703538

日期是格式和语言敏感的,切记!
select TO_NUMBER('100.00', '9G999D99') from dual;
G为千分符,D为小数点

转自:https://blog.csdn.net/yanliling0909/article/details/8551259

你可能感兴趣的:(数据库,Oracle)