Oracle字符函数

CHR,ASCII

语法CHR(string)ASCII(string)

功能:归来在数据库字符集中与X拥有等价数值的字符。CHR和ASCII是一对反函数。经过CHR转换后的字符再经过ASCII转换又收获了原本的字符。

例子:SELECT ASCII(‘A’),ASCII(‘a’),CHR(’65’),CHR(’97’) FROM dual;

接纳地方:过程性语句和SQL语句。

CONCAT

语法: CONCAT(string1,string2)

功能:回去string1,并且在背后连接string2,其效果和”||”一样。

事例:select CONCAT(‘aaa’,’bbb’),’aaa’||’bbb’ from dual;//这多少个结果一律。

拔取地方:过程性语句和SQL语句。

INITCAP

语法:INITCAP(string)

功能:归来字符串的每个单词的首先个假名大写而单词中的其他字母小写的string。单词是用.空格或给字母字符举办分隔。不是字母的字符不变动。

例子:select INITCAP(‘aa|aa’) from dual;//结果是Aa|Aa

利用地方:过程性语句和SQL语句。

LTRIM

语法:LTRIM(string1,string2)

功能:重临删除从左边算起出现在string2中的字符的string1。String2被缺省设置为单个的空格。数据库将围观string1,从最左侧起初。当遭逢不在string2中的第一个字符,结果就被再次回到了。LTRIM的所作所为艺术与RTRIM很相像。

例子:select LTRIM(‘abcdab’,’ab’) from dual;//结果是cdab

select LTRIM(‘baabcdab’,’ab’) from dual;//结果是cdba

Oracle,select LTRIM(‘dbaabcdab’,’ab’) from dual;//结果是dbaabcdab

动用地方:过程性语句和SQL语句。

REPLACE,TRANSLATE

语法:REPLACE(string,search_str,replace_str),TRANSLATE(string,from_str,to_str)

功能:把string中的所有的子字符串search_str用可选的replace_str替换,假诺没有点名replace_str,所有的string中的子字符串search_str都将被删除。REPLACETRANSLATE所提供的成效的一个子集。

事例:select REPLACE(‘adfasdadf’,’a’,’-‘),Translate(‘adfasdadf’,’a’,’-‘) from dual;//结果都是-df-sd-df

选择地点:过程性语句和SQL语句。

RPAD,LPAD

语法:RPAD(string1,x[,string2]),LPAD(string1,x[,string2])

功能:再次回到在X
字符长度的地方上插入一个string2中的字符的string1。假诺string2的尺寸要比X字符少,就按照需要开展复制。假诺string2多于
X字符,则仅string1前方的X各字符被拔取。如若没有点名string2,那么使用空格举办填写。X是应用显示长度可以比字符串的其实尺寸要长。
RPAD的行为艺术与LPAD很相像,除了它是在右手而不是在左侧进行填写。

例子:SELECT LPAD(‘liunan86786786786′,10,’*’) 去掉字符长度后左边填充指定字符,

RPAD(‘liunan’,10,’*’) 去掉字符长度后左侧填充指定字符,

RPAD(LPAD(‘liunan’,10,’*’),14,’*’) 搭配使用左右填写

FROM dual;

行使地点:过程性语句和SQL语句。

SUBSTR

语法: SUBSTR(string,a[,b])

功能: 再次来到从字母为值a先河b个字符长的string的一个子字符串.假如a是0,那么它就被认为从第一个字符开端.假假诺正数,重回字符是从左侧向右边举办测算的.倘若b是负数,那么再次来到的字符是从string的末尾初步从右向左进行测算的.即便b不设有,那么它将缺省的装置为所有字符串.假使b小于1,那么将回到NULL.倘若a或b使用了浮点数,那么该数值将在拍卖举办从前首先被却为一个整数.

例子:SELECT SUBSTR(‘adfadsfasd’,4) from dual;//结果是adsfasd

SELECT SUBSTR(‘adfadsfasd’,-4) from dual;//结果是fasd

动用地方:过程性语句和SQL语句。

UPPER,LOWER

语法: UPPER(string),LOWER(string)

功能: 回来大写的string.不是字母的字符不变.尽管string是CHAR数据类型的,那么结果也是CHAR类型的.假如string是VARCHAR2类型的,那么结果也是VARCHAR2类型的.

例子:SELECT UPPER(‘adfa’),LOWER(‘ADFA’) FROM dual;

动用地方: 过程性语句和SQL语句。

INSTR,INSTRB

语法: INSTR(string1, string2[a,b]),INSTRB(string1,
string2[a,[b]])

功能: 得到在string1中隐含string2的地方.
string1时从左侧最先检查的,开端的岗位为a,即使a是一个负数,那么string1是从左边起初展开围观的.第b次出现的地点将被再次来到.
a和b都缺省设置为1,这将会重返在string1中首先次出现string2的地点.假如string2在a和b的确定下并未找到,那么重回0.岗位的计量是周旋于string1的起初地方的,不管a和b的取值是多少.

INSTRB 和INSTR相同,只是操作的对参数字符使用的职务的是字节.

例子:select instr(‘abcedfghedfghijk’,’edf’,1,2) from dual;//结果是9

行使地方: 过程性语句和SQL语句。

LENGTH,LENGTHB

语法: LENGTH(string),LENGTHB(string)

功能: 重临string的字节单位的长度.CHAR数值是填充空格类型的,假设string由数据类型CHAR,它的最终的空格都被总结到字符串长度中间.如若string是NULL,再次来到结果是NULL,而不是0.

LENGTHB重临以字节为单位的string的长度.对于单字节字符集LENGTHB和LENGTH是相同的.

例子:SELECT LENGTH(‘adsfad’) FROM DUAL;

动用地方: 过程性语句和SQL语句。

相关文章