千家信息网

Oracle中字符操作函数有哪些

发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,小编给大家分享一下Oracle中字符操作函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!字符操作函数CONCATC
千家信息网最后更新 2025年01月27日Oracle中字符操作函数有哪些

小编给大家分享一下Oracle中字符操作函数有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

字符操作函数

CONCAT

CONCAT函数连接两个字符字面值、列或者表达式从而生成一个更大的字字符表达式。语法:CONCAT(s1,s2)

select concat('Today is:',SYSDATE) FROM DUAL;

CONCAT只能使用两个参数

select concat('Outer1 ',concat('Inner1',' Inner2')) from dual;

LENGTH

LENGTH函数返回组成字符串的字符数。空格、制表符和特殊字符都被LENGTH函数计算在内。只有一个参数,LENGTH(s)。(制表符算1)

select length('ab cd e') from dual;

LPAD和RPAD

LPAD(RPAD)函数返回给定字符串左(右)边填充指定数量的字符后形成的合成字符串。用于填充的字符串包括字符字面值、列值、表达式、空格(默认)、制表符和特殊字符。

LPAD和RPAD函数有三个参数,语法:RPAD(s,n,p)和LPAD(s,n,p)。s表示源字符串,n表示返回字符串的最终长度,p指定用于填充的字符串。

select LPAD('abc',6,'*'),RPAD('abc',6,'*') from dual;

TRIM

TRIM函数从字符值的开头或结尾删除一些字符,从面生成一个更简短的字符项。

TRIM函数使用的参数由一个强制组成部分和一个可选组成部分构成。语法:TRIM([trailing|leading|both] trimstring from s)。被修整的字符串(s)是强制的。只能指定一个修正字符。

TRIM(s)删除输入字符串两边的空格。

TRIM(trailing trimstring from s) 从字符串s的结尾删除所有trimstring(如果存在的话)。

TRIM(leading trimstring from s) 从字符串s的开头删除所有trimstring(如果存在的话)。

TRIM(both trimstring from s) 从字符串s的开头和结尾删除所有trimstring(如果存在的话)。

select trim(both '*' from '*****Hidden*****'),trim(leading '*' from '*****Hidden*****'),trim(trailing '*' from '*****Hidden*****'),trim(both from ' Hidden '),trim(trailing from ' Hidden'),trim(leading from 'Hidden ') from dual;

RTRIM

RTRIM函数从字符值的结尾删除一些字符,从而生成一个更简短的字符串。
语法:RTRIM(string[,trimstring]),被修整的string是必须的,可以删除多个字符。默认删除空格。
select rtrim('abcd ') from dual;
select rtrim('abcd***','*') from dual; select rtrim('abcd*#','*#') from dual;

LTRIM

LTRIM函数从字符值的开头删除一些字符,从而生成一个更简短的字符串。
语法:RTRIM(string[,trimstring]),被修整的string是必须的,可以删除多个字符。默认删除空格。
select ltrim(' abcd') from dual;
select ltrim('***abcd','*') from dual; select ltrim('*#abcd','*#') from dual;

INSTR

INSTR函数确定搜索字符串在给定字符串内的位置。它返回数字位置,在这个位置上,搜索字符串开始第n次出现(相对于指定的起始位置而言)。如果搜索字符串不存在,则返回0.

INSTR函数使用两个可选参数和两个强制参数。语法:INSTR(source string,search string,[search start position],[nth occurrence])。search start position的默认值是1或者source string的开头。nth occurrence 的默认值是1或者第一次出现。

select instr('1#3#5#7#9#','#') from dual;

从左第1个字符往右,返回'#'第1次出现的位置。

select instr('1#3#5#7#9#','#',5) from dual;

从左第5个字符往右,返回'#'第1次出现的位置。

select instr('1#3#5#7#9#','#',3,4) from dual;

从左第3个字符往右,返回'#'第4次出现的位置。

select instr('1#3#5#7#9#','#',3,10) from dual;

从左第3个字符往右,返回'#'第10次出现的位置,没有找到返回0.

select instr('1#3#5#7#9#','#',-1) from dual;

从右第1个字符往左,返回'#'第1次出现的位置。

select instr('1#3#5#7#9#','#',-1,3) from dual;

从右第1个字符往左,返回'#'第3次出现的位置。

select instr('1#3#5#7#9#','#',-3,3) from dual;

从右第3个字符往左,返回'#'第3次出现的位置。

SUBSTR

SUBSTR函数从给定源字符串中给定的位置开始,提取指定长度的字符串。如果起始位置大于源字符串的长度,就会返回null。如果从给定起始位置提取的字符数大于源字符串的长度,返回的部分是从起始位置到字符串结尾的子字符串。

SUBSTR函数有三个参数,前两个是强制的。语法:SUBSTR(source string,start position,[number of characters to extract])。要提取的默认字符数是从start position 到source string 结尾的字符数。

select substr('1#3#5#7#9#',5) from dual;

从从左到右数第5个字符处开始提取,从左到右提取,一直到源字符串结尾。

select substr('1#3#5#7#9#',5,3) from dual;

从从左到右数第5个字符处开始提取,从左到右提取,提取3个字符。

select substr('1#3#5#7#9#',-3,2) from dual;

从从右到左数第3个字符处开始提取,从左到右提取,提取2个字符。

select substr('1#3#5#7#9#',-3,-2) from dual;


REPLACE

REPLACE函数用替换项取代源字符串中出现的所有搜索项。如果替换项的长度与搜索项的长度不同,那么返回字符串的长度与源字符串的长度也不同。如果没有找到搜索字符串,就会原封不动的返回源字符串。

REPLACE函数有三个参数,前两个是强制的。语法:REPLACE(source string,search item[,replacement term])。如果省略replacement term参数,就会从source string 中删除所有出现的search item。

select replace('1#3#5#7#9#','#','->') from dual;

select replace('1#3#5#7#9#','#') from dual;

以上是"Oracle中字符操作函数有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0