常用转换类型函数介绍
42、chartorowid (基本上不会用到)
将字符数据类型转换为rowid类型
SQL>select rowid,rowidtochar(rowid),ename from emp;
ROWID ROWIDTOCHAR(ROWID) ENAME
--------------------------------- ------------------ ----------
AAAR3sAAEAAAACXAAA AAAR3sAAEAAAACXAAA SMITH
AAAR3sAAEAAAACXAAB AAAR3sAAEAAAACXAAB ALLEN
AAAR3sAAEAAAACXAAC AAAR3sAAEAAAACXAAC WARD
43、convert(c,dset,sset) (基本上不会用到)
将源字符串sset从一个语言字符集转换到另一个目的dset字符集;
SQL>select convert('strutx','we8hp','f7dec') "conversion" from dual;
conversion
----------
strutx
44、hextoraw (基本上不会用到)
将一个十六进制构成的字符转换为二进制
45、rawtohex (基本上不会用到)
将一个二进制构成的字符串转换为十六进制
46、rowidtochar (基本上不会用到)
将rowid数据类型转换为字符类型
47、to_char(date,'format')
日期类型转换成字符串格式(主要用于将日期以习惯的格式输出显示)
SQL>select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') from dual;
TO_CHAR(SYSDATE,'YYYY/MM/DDHH2
------------------------------
2014/04/24 16:19:34
to_char
可以使用select ename.hiredate,sal from emp where deptno=10;
显示信息,可是在某些情况下,这个并不能满足你的需求。
日期是否可以显示时/分/秒?
select to_char(hiredate,'yyyy-mm-dd hh24:mi:ss') from emp;
薪水是否可以显示指定的货币符号?
select to_char(sal,'$9999.99') from emp;
特别说明:
日期格式:
yy:两位数字的年份 2004--04
yyyy:四位数字的年份 2004年
mm:两位数字的月份 8月--08
dd:两位数字的天数 30号--30
hh24:二十四小时制8点--20
hh12:十二小时制8点--08
mi,ss--显示分钟\秒
day显示星期几
month显示几月
year显示年
数字格式:
9:显示数字,并忽略前面0
0:显示数字,如位数不足,则用0补齐
.:在指定位置显示小数点
,:在指定位置显示逗号
$:在数字前加美元符号
L:在数字前加本地货币符号
C:在数字前加国际货币符号
G:在指定位置显示组分隔符
D:在指定位置显示小数点符号(.)
说明:,逗号.和小数点可以合在一起使用,G分隔符和D小数点符可以合在一起使用,但,.不能和GD综合使用,否则报错。
48、to_date(string,'format')
将字符串转换成日期(主要用于将日期按习惯的格式输入到oracle数据库中)
说明:to_date的用户到to_char的日期型用法基本是一样的,只是功能不一样。to_char是用于显示输出数据,to_date是用于输入数据。
49、to_multi_byte
将字符串中的单字节字符转换为多字节字符;(底层的转换)
SQL>select to_multi_byte('高') from dual;
TO_MULTI_BYTE('高')
-------------------
高
50、to_number
将给出的数字类型的字符转换为数字;
SQL>select to_number('1999') year from dual;
YEAR
----------
1999