ORACLE字符型函数(一)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | ASCII(x1) 【功能】:返回字符表达式最左端字符的ASCII 码值。 【参数】:x1,字符表达式 【返回】:数值型 【示例】 SQL> select ascii('A') A,ascii('a') a,ascii(' ') space,ascii('示') hz from dual; A A SPACE hz --------- --------- --------- --------- 65 97 32 51902 【说明】在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。 如果最左端是汉字,只取汉字最左半边字符的ASCII 码 【互反函数】:chr() |
?
1 | CHR(n1) 【功能】:将ASCII 码转换为字符。 【参数】:n1,为0 ~ 255,整数 【返回】:字符型 【示例】 SQL> select chr(54740) zhao,chr(65) chr65 from dual; ZH C -- - 赵 A 【互反函数】:ASCII |
?
1 | CONCAT(c1,c2) 【功能】连接两个字符串 【参数】c1,c2 字符型表达式 【返回】字符型 同:c1||c2 【示例】 select concat('010-','88888888')||'转23' 高乾竞电话 from dual; 高乾竞电话 ---------------- 010-88888888转23 |
?
1 | INITCAP(c1) 【功能】返回字符串并将字符串的第一个字母变为大写,其它字母小写; 【参数】c1字符型表达式 【返回】字符型 【示例】 SQL> select initcap('smith abc aBC') upp from dual; UPP ----- Smith Abc Abc |
?
1 | LOWER(c1) 【功能】:将字符串全部转为小写 【参数】:c1,字符表达式 【返回】:字符型 【示例】 SQL> select lower('AaBbCcDd')AaBbCcDd from dual; AABBCCDD -------- aabbccdd 【同类】UPPER()将字符串全部转为大写。 |
?
1 | UPPER(c1) 【功能】将字符串全部转为大写 【参数】c1,字符表达式 【返回】字符型 【示例】 SQL> select upper('AaBbCcDd') upper from dual; UPPER -------- AABBCCDD 【同类】LOWER()将字符串全部转为小写 |
?
1 | NLS_INITCAP(x[,y]) 【功能】返回字符串并将字符串的第一个字母变为大写,其它字母小写; 【参数】x字符型表达式 【参数】Nls_param可选, 查询数据级的NLS设置:select * from nls_database_parameters; 例如: 指定排序的方式(nls_sort=) 。 nls_sort=SCHINESE_RADICAL_M(部首、笔画) nls_sort=SCHINESE_STROKE_M(笔画、部首SCHINESE_PINYIN_M(拼音)) 【返回】字符型 【示例】 select nls_initcap('ab cde') "test", nls_initcap('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual; 返回:Ab Cde, A C B D E select nls_initcap('ab cde') "test", nls_initcap('a c b d e','NLS_LANGUAGE=AMERICAN') "test1" from dual; |
?
1 | NLS_LOWER(x[,y]) 【功能】返回字符串并将字符串的变为小写; 【参数】x字符型表达式 【参数】Nls_param可选,指定排序的方式(nls_sort=) 。 SCHINESE_RADICAL_M(部首、笔画) SCHINESE_STROKE_M(笔画、部首SCHINESE_PINYIN_M(拼音)) 【返回】字符型 【示例】 select nls_LOWER('ab cde') "test",nls_LOWER('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual; 返回:ab cde,a c b d e |
?
1 | NLS_UPPER(x[,y]) 【功能】返回字符串并将字符串的转换为大写; 【参数】x字符型表达式 【参数】Nls_param可选,指定排序的方式(nls_sort=) 。 SCHINESE_RADICAL_M(部首、笔画) SCHINESE_STROKE_M(笔画、部首SCHINESE_PINYIN_M(拼音)) 【返回】字符型 【示例】 select NLS_UPPER('ab cde') "test",NLS_UPPER('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual; 返回:AB CDE,A C B D E |
?
1 | INSTR(C1,C2[,I[,J]]) 【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】 C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为1 J 第J次出现的位置,默认为1 【返回】数值 【示例】select instr('oracle traning','ra',1,2) instring from dual; 返回:9 【示例】select instr('重庆某软件公司','某',1,1),instrb('重庆某软件公司','某',1,1) instring from dual; 返回:3,5 |
?
1 | INSTRB(C1,C2[,I[,J]]) 【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置; 【说明】多字节符(汉字、全角符等),按2个字符计算 【参数】 C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为1 J 第J次出现的位置,默认为1 【返回】数值 【示例】select instr('重庆某软件公司','某',1,1),instrb('重庆某软件公司','某',1,1) instring from dual; 返回:3,5 |
?
1 | LENGTH(c1) 【功能】返回字符串的长度; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】C1 字符串 【返回】数值型 【示例】 SQL> select length('高乾竞'),length('北京市海锭区'),length('北京TO_CHAR') from dual; length('高乾竞') length('北京市海锭区') length('北京TO_CHAR') ----------------- ---------------- ---------------------------- 3 6 9 |
?
1 | LENGTH(c1) 【功能】返回字符串的长度; 【说明】多字节符(汉字、全角符等),按2个字符计算 【参数】C1 字符串 【返回】数值型 【示例】 SQL> select length('高乾竞'),lengthB('高乾竞') from dual; length('高乾竞') lengthB('高乾竞') ----------------- ---------------- 3 6 |
?
1 | LENGTHC(c1).LENGTH2(c1).LENGTH4(c1) 【功能】返回字符串的长度; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】C1 字符串 【返回】数值型 【示例】 SQL> select length('高乾竞'),length('北京市海锭区'),length('北京TO_CHAR') from dual; Oracle中的字符函数中,有一类函数是求字符长度的函数,length、lengthB、lengthC、length2、length4几个函数中比较常用的是length、lengthB。 他们的含义分别是: Length函数返回字符的个数,使用定义是给定的字符集来计算字符的个数 LENGTHB给出该字符串的byte LENGTHC使用纯Unicode LENGTH2使用UCS2 LENGTH4使用UCS4 下面使一些例子: Select length('你好') from dual; 2 Select lengthB('你好'),lengthC('你好'),length2('你好'), length4('你好') from dual; |
?
1 |
?
1 |
分享到: