oracle 10g函数大全--字符型函数
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()
CHR(n1) 【功能】:将ASCII 码转换为字符。 【参数】:n1,为0 ~ 255,整数 【返回】:字符型 【示例】 SQL> select chr(54740) zhao,chr(65) chr65 from dual; ZH C -- - 赵 A 【互反函数】:ASCII
CONCAT(c1,c2) 【功能】连接两个字符串 【参数】c1,c2 字符型表达式 【返回】字符型 同:c1||c2 【示例】 select concat('010-','88888888')||'转23' 高乾竞电话 from dual; 高乾竞电话 ---------------- 010-88888888转23
INITCAP(c1) 【功能】返回字符串并将字符串的第一个字母变为大写,其它字母小写; 【参数】c1字符型表达式 【返回】字符型 【示例】 SQL> select initcap('smith abc aBC') upp from dual; UPP ----- Smith Abc Abc
LOWER(c1) 【功能】:将字符串全部转为小写 【参数】:c1,字符表达式 【返回】:字符型 【示例】 SQL> select lower('AaBbCcDd')AaBbCcDd from dual; AABBCCDD -------- aabbccdd 【同类】UPPER()将字符串全部转为大写。
UPPER(c1) 【功能】将字符串全部转为大写 【参数】c1,字符表达式 【返回】字符型 【示例】 SQL> select upper('AaBbCcDd') upper from dual; UPPER -------- AABBCCDD 【同类】LOWER()将字符串全部转为小写
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;
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
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
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
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
LENGTH(c1)
【功能】返回字符串的长度;
【说明】多字节符(汉字、全角符等),按1个字符计算
【参数】C1 字符串
【返回】数值型
【示例】
SQL> select length('高乾竞'),length('北京市海锭区'),length('北京TO_CHAR') from dual;
length('高乾竞') length('北京市海锭区') length('北京TO_CHAR')
----------------- ---------------- ----------------------------
3 6 9
LENGTH(c1)
【功能】返回字符串的长度;
【说明】多字节符(汉字、全角符等),按2个字符计算
【参数】C1 字符串
【返回】数值型
【示例】
SQL> select length('高乾竞'),lengthB('高乾竞') from dual;
length('高乾竞') lengthB('高乾竞')
----------------- ----------------
3 6
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;
LPAD(c1,n[,c2]) 【功能】在字符串c1的左边用字符串c2填充,直到长度为n时为止 【参数】C1 字符串 n 追加后字符总长度 c2 追加字符串,默认为空格 【返回】字符型 【说明】如果c1长度大于n,则返回c1左边n个字符 如果如果c1长度小于n,c2和c1连接后大于n,则返回连接后的右边n个字符 【示例】 SQL> select lpad('gao',10,'*') from dual; lpad('gao',10,'*') ----------------- *******gao 不够字符则用*来填满 【相似】RPAD()在列的右边粘贴字符 【相反】LTRIM() 删除左边出现的字符串
RPAD(c1,n[,c2]) 【功能】在字符串c1的右边用字符串c2填充,直到长度为n时为止 【参数】C1 字符串 n 追加后字符总长度 c2 追加字符串,默认为空格 【返回】字符型 【说明】如果c1长度大于n,则返回c1左边n个字符 如果如果c1长度小于n,c1和c2连接后大于n,则返回连接后的左边n个字符 如果如果c1长度小于n,c1和c2连接后小于n,则返回c1与多个重复c2连接(总长度>=n)后的左边n个字符 【示例】 SQL> select rpad('gao',10,'*a') from dual; rpad('gao',10,'*a') ----------------- gao*a*a*a* 【相似】LPAD()在列的左边粘贴字符 【相反】RTRIM() 删除右边出现的字符串
LTRIM(c1,[,c2]) 【功能】删除左边出现的字符串 【参数】C1 字符串 c2 追加字符串,默认为空格 【返回】字符型 【示例】 SQL> select LTRIM(' gao qian jing',' ') text from dual; 或:select LTRIM(' gao qian jing') text from dual; text ----------------- gao qian jing 【相似】RTRIM()删除右边出现的字符串 【相反】LPAD() 在列的左边粘贴字符
RTRIM(c1,[,c2]) 【功能】删除右边出现的字符串 【参数】C1 字符串 c2 追加字符串,默认为空格 【返回】字符型 【示例】 SQL> select RTRIM('gao qian jingXXXX','X') text from dual; text ----------------- gao qian jing 【相似】LTRIM()删除左边出现的字符串 【相反】RPAD() 在列的右边粘贴字符
REPLACE(c1,c2[,c3]) 【功能】将字符表达式值中,部分相同字符串,替换成新的字符串 【参数】 c1 希望被替换的字符或变量 c2 被替换的字符串 c3 要替换的字符串,默认为空(即删除之意,不是空格) 【返回】字符型 【示例】 SQL> select replace('he love you','he','i') test from dual; test ------------------------------ i love you
SOUNDEX(c1) 【功能】返回字符串参数的语音表示形式 【参数】c1,字符型 【返回】字符串 【说明】相对于比较一些读音相同,但是拼写不同的单词是非常有用的。 计算语音的算法: 1.保留字符串首字母,但删除a、e、h、i、o、w、y 2.将下表中的数字赋给相对应的字母 (1) 1:b、f、p、v (2) 2:c、g、k、q、s、x、z (3) 3:d、t (4) 4:l (5) 5:m、n (6) 6:r 3. 如果字符串中存在拥有相同数字的2个以上(包含2个)的字母在一起(例如b和f),或者只有h或w,则删除其他的,只保留1个 4.只返回前4个字节,不够用0填充 示例: soundex('two'),soundex('too'),soundex('to'),他们的结果都是T000 soundex('cap'),soundex('cup'),他们的结果都是C100 soundex('house'),soundex('horse'),他们的结果都分别是H200,H620
SUBSTR(c1,n1[,n2]) 【功能】取子字符串 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】在字符表达式c1里,从n1开始取n2个字符;若不指定n2,则从第y个字符直到结束的字串. 【返回】字符型 【示例】 SQL> select substr('13088888888',3,8) test from dual; test -------- 08888888
SUBSTRB(c1,n1[,n2]) 【功能】取子字符串 【说明】多字节符(汉字、全角符等),按2个字符计算 【参数】在字符表达式c1里,从n1开始取n2个字符;若不指定n2,则从第y个字符直到结束的字串. 【返回】字符型,如果从多字符右边开始,则用空格表示。 【示例】 select substr('我手机13012345678',4,11),substrb('我手机13012345678',4,11),substrb('我手机13012345678',3,11) test from dual; 返回:13012345678, 机13012345,手机1301234
TRANSLATE(c1,c2,c3) 【功能】将字符表达式值中,指定字符替换为新字符 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】 c1 希望被替换的字符或变量 c2 查询原始的字符集 c3 替换新的字符集,将c2对应顺序字符,替换为c3对应顺序字符 如果c3长度大于c2,则c3长出后面的字符无效 如果c3长度小于c2,则c2长出后面的字符均替换为空(删除) 如果c3长度为0,则返回空字符串。 如果c2里字符重复,按首次位置为替换依据 【返回】字符型 【示例】 select TRANSLATE('he love you','he','i'), TRANSLATE('重庆的人','重庆的','上海男'), TRANSLATE('重庆的人','重庆的重庆','北京男士们'), TRANSLATE('重庆的人','重庆的重庆','1北京男士们'), TRANSLATE('重庆的人','1重庆的重庆','北京男士们') from dual; 返回:i love you,上海男人,北京男人,1北京人,京男士人
TRIM(c1 from c2)
【功能】删除左边和右边出现的字符串
【参数】C2 删除前字符串
c1 删除字符串,默认为空格
【返回】字符型
【示例】
select TRIM('X' from 'XXXgao qian jingXXXX'),TRIM('X' from 'XXXgaoXXjingXXXX') text from dual;
返回:gao qian jing gaoXXjing
【相似】LTRIM()删除左边出现的字符串 RTRIM()删除右边出现的字符串
分类:
Oracle
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决