码迷,mamicode.com
首页 > 数据库 > 详细

Oracle函数大全之转换函数

时间:2016-08-01 10:25:28      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:

chartorowid(c1) 

【功能】转换varchar2类型为rowid值 

【参数】c1,字符串,长度为18的字符串,字符串必须符合rowid格式 

【返回】返回rowid值 

【示例】 SELECT chartorowid(‘AAAADeAABAAAAZSAAA‘) FROM DUAL; 【说明】 在Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是在Oracle中的哪一个数据文件、块、行上。 在重复的记录中,可能所有列的内容都相同,但rowid不会相同.

技术分享

---------------------------------------------------------------------

ROWIDTOCHAR(rowid) 

【功能】转换rowid值为varchar2类型 

【参数】rowid,固定参数 

【返回】返回长度为18的字符串 

 【示例】 SELECT ROWIDTOCHAR(rowid) FROM DUAL; 

【说明】 在Oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是在Oracle中的哪一个数据文件、块、行上。 在重复的记录中,可能所有列的内容都相同,但rowid不会相同.

技术分享

---------------------------------------------------------------------

CONVERT(c1,set1,set2) 

【功能】将源字符串c1 从一个语言字符集set2转换到另一个目的set1字符集 

【参数】c1,字符串,set1,set2为字符型参数 

 【返回】字符串 

 【示例】 select convert(‘strutz‘,‘we8hp‘,‘f7dec‘) "conversion" from dual; 

技术分享

---------------------------------------------------------------------

HEXTORAW(c1) 

【功能】将一个十六进制构成的字符串转换为二进制 

【参数】c1,十六进制的字符串 

 【返回】字符串 

 【示例】 select HEXTORAW(‘A123‘)  from dual;

 技术分享

---------------------------------------------------------------------

 

RAWTOHEX(c1) 

【功能】将一个二进制构成的字符串转换为十六进制 

【参数】c1,二进制的字符串 

 【返回】字符串 

 【示例】 select RAWTOHEX(‘A123‘)  from dual;

技术分享

---------------------------------------------------------------------

 

TO_CHAR(x[[,c2],C3])

【功能】将日期或数据转换为char数据类型

【参数】x是一个date或number数据类型。c2为格式参数c3为NLS设置参数如果x为日期nlsparm=NLS_DATE_LANGUAGE 控制返回的月份和日份所使用的语言。如果x为数字nlsparm=NLS_NUMERIC_CHARACTERS 用来指定小数位和千分位的分隔符,以及货币符号。NLS_NUMERIC_CHARACTERS ="dg", NLS_CURRENCY="string"

【返回】varchar2字符

【说明1】x为数据型时

【示例】to_char(1210.73, ‘9999.9‘) 返回 ‘1210.7‘ to_char(1210.73, ‘9,999.99‘) 返回 ‘1,210.73‘ to_char(1210.73, ‘$9,999.00‘) 返回 ‘$1,210.73‘ to_char(21, ‘000099‘) 返回 ‘000021‘ to_char(852,‘xxxx‘) 返回‘ 354‘

【说明2】x为日期型时

【示例】to_char(sysdate,‘d‘) 每周第几天 to_char(sysdate,‘dd‘) 每月第几天 to_char(sysdate,‘ddd‘) 每年第几天 to_char(sysdate,‘ww‘) 每年第几周 to_char(sysdate,‘mm‘) 每年第几月 to_char(sysdate,‘q‘) 每年第几季 to_char(sysdate,‘yyyy‘) 年

【示例】带C3示例

select to_char(to_date(‘2002-08-26‘,‘yyyy-mm-dd‘),‘day‘,‘NLS_DATE_LANGUAGE = American‘) from dual; 

返回:monday 

技术分享

---------------------------------------------------------------------

TO_DATE(X[,c2[,c3]]) 

【功能】将字符串X转化为日期型 

【参数】c2,c3,字符型,参照to_char() 

【返回】字符串 如果x格式为日期型(date)格式时,则相同表达:date x 如果x格式为日期时间型(timestamp)格式时,则相同表达:timestamp x 

 【相反】 to_char(date[,c2[,c3]]) 

 【示例】 select to_date(‘199912‘,‘yyyymm‘), to_date(‘2000.05.20‘,‘yyyy.mm.dd‘), (date ‘2008-12-31‘) XXdate, to_date(‘2008-12-31 12:31:30‘,‘yyyy-mm-dd hh24:mi:ss‘), (timestamp ‘2008-12-31 12:31:30‘) XXtimestamp from dual;

技术分享

---------------------------------------------------------------------

TO_NUMBER(X[[,c2],c3]) 

【功能】将字符串X转化为数字型 

【参数】c2,c3,字符型,参照to_char() 

【返回】数字串 

【相反】 to_char(date[[,c2],c3]) 

【示例】 select TO_NUMBER(‘199912‘),TO_NUMBER(‘450.05‘) from dual;

 转换为16进制。 TO_CHAR(100,‘XX‘)= 64

技术分享

---------------------------------------------------------------------

TO_MULTI_BYTE(c1) 

【功能】将字符串中的半角转化为全角 

【参数】c1,字符型 

【返回】字符串 

【示例】 select to_multi_byte(‘高A‘) text from dual;

技术分享

---------------------------------------------------------------------

to_single_byte(c1) 

【功能】将字符串中的全角转化为半角 

【参数】c1,字符型 

【返回】字符串 

 【示例】 select to_multi_byte(‘高A‘) text from dual;

技术分享 

---------------------------------------------------------------------

nls_charset_id(c1) 

【功能】返回字符集名称参应id值 

【参数】c1,字符型 

【返回】数值型 

 【示例】 select nls_charset_id(‘zhs16gbk‘) from dual;

技术分享

---------------------------------------------------------------------

nls_charset_name(n1) 

【功能】返回字符集名称参应id值 

【参数】n1,数值型 

【返回】字符型 

【示例】 select nls_charset_name(852) from dual;

技术分享

 

Oracle函数大全之转换函数

标签:

原文地址:http://www.cnblogs.com/cnsdhzzl/p/5724721.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!