`

Oracle字符串处理函数

 
阅读更多
项目中有涉及存储过程对字符串的处理,所以就将在网上查找到的资料汇总,做一个信息拼接式的总结。

以下信息均来自互联网,贴出来一则自己保存以待以后使用,一则供大家分享。

字符函数——返回字符值

这些函数全都接收的是字符族类型的参数(CHR除外)并且返回字符值.

除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.

字符函数的返回类型所受的限制和基本数据库类型所受的限制是相同的。

字符型变量存储的最大值:

VARCHAR2数值被限制为2000字符(ORACLE 8中为4000字符)

CHAR数值被限制为255字符(在ORACLE8中是2000)

long类型为2GB

Clob类型为4GB

1、CHR

语法: chr(x)

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

符。

使用位置:过程性语句和SQL语句。


2、CONCAT

语法: CONCAT(string1,string2)

功能:返回string1,并且在后面连接string2。

使用位置:过程性语句和SQL语句。


3、INITCAP

语法:INITCAP(string)

功能:返回字符串的每个单词的第一个字母大写而单词中的其他字母小写的string。单词是用.空格或给字母数字字符进行分隔。不是字母的

字符不变动。

使用位置:过程性语句和SQL语句。


4、LTRIM

语法:LTRIM(string1,string2)

功能:返回删除从左边算起出现在string2中的字符的string1。String2被缺省设置为单个的空格。数据库将扫描string1,从最左边开始。当

遇到不在string2中的第一个字符,结果就被返回了。LTRIM的行为方式与RTRIM很相似。

使用位置:过程性语句和SQL语句。

5、NLS_INITCAP

语法:NLS_INITCAP(string[,nlsparams])

功能:返回字符串每个单词第一个字母大写而单词中的其他字母小写的string,nlsparams

指定了不同于该会话缺省值的不同排序序列。如果不指定参数,则功能和INITCAP相同。Nlsparams可以使用的形式是:

‘NLS_SORT=sort’

这里sort制订了一个语言排序序列。

使用位置:过程性语句和SQL语句。

6、NLS_LOWER

语法:NLS_LOWER(string[,nlsparams])

功能:返回字符串中的所有字母都是小写形式的string。不是字母的字符不变。

      Nlsparams参数的形式与用途和NLS_INITCAP中的nlsparams参数是相同的。如果nlsparams没有被包含,那么NLS_LOWER所作的处理和

LOWER相同。

使用位置;过程性语句和SQL语句。

7、NLS_UPPER

语法:nls_upper(string[,nlsparams])

功能:返回字符串中的所有字母都是大写的形式的string。不是字母的字符不变。nlsparams参数的形式与用途和NLS_INITCAP中的相同。如果

没有设定参数,则NLS_UPPER功能和UPPER相同。

使用位置:过程性语句和SQL语句。

8、REPLACE

语法:REPLACE(string,search_str[,replace_str])

功能:把string中的所有的子字符串search_str用可选的replace_str替换,如果没有指定replace_str,所有的string中的子字符串

search_str都将被删除。REPLACE是TRANSLATE所提供的功能的一个子集。

使用位置:过程性语句和SQL语句。

9、RPAD

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

功能:返回在X字符长度的位置上插入一个string2中的字符的string1。如果string2的长度要比X字符少,就按照需要进行复制。如果string2

多于X字符,则仅string1前面的X各字符被使用。如果没有指定string2,那么使用空格进行填充。X是使用显示长度可以比字符串的实际长度

要长。RPAD的行为方式与LPAD很相似,除了它是在右边而不是在左边进行填充。

使用位置:过程性语句和SQL语句。

10、RTRIM
语法: RTRIM(string1,[,string2])

功能: 返回删除从右边算起出现在string1中出现的字符string2. string2被缺省设置为单个的空格.数据库将扫描string1,从右边开始.当遇

到不在string2中的第一个字符,结果就被返回了RTRIM的行为方式与LTRIM很相似.

使用位置:过程性语句和SQL语句。

11、SOUNDEX

语法: SOUNDEX(string)

功能: 返回string的声音表示形式.这对于比较两个拼写不同但是发音类似的单词而言很有帮助.

使用位置:过程性语句和SQL语句。

12、SUBSTR

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

功能: 返回从字母为值a开始b个字符长的string的一个子字符串.如果a是0,那么它就被认为从第一个字符开始.如果是正数,返回字符是从左

边向右边进行计算的.如果b是负数,那么返回的字符是从string的末尾开始从右向左进行计算的.如果b不存在,那么它将缺省的设置为整个字符

串.如果b小于1,那么将返回NULL.如果a或b使用了浮点数,那么该数值将在处理进行以前首先被却为一个整数.

使用位置:过程性语句和SQL语句。

13、TRANSLATE

   语法: TRANSLATE(string,from_str,to_str)

   功能: 返回将所出现的from_str中的每个字符替换为to_str中的相应字符以后的string. TRANSLATE是REPLACE所提供的功能的一个超集.

如果from_str比to_str长,那么在from_str中而不在to_str中而外的字符将从string中被删除,因为它们没有相应的替换字符. to_str不能为空

.Oracle把空字符串认为是NULL,并且如果TRANSLATE中的任何参数为NULL,那么结果也是NULL.

使用位置:过程性语句和SQL语句。


14、UPPER

语法: UPPER(string)

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

结果也是VARCHAR2类型的.

使用位置: 过程性语句和SQL语句。


字符函数——返回数字

这些函数接受字符参数回数字结果.参数可以是CHAR或者是VARCHAR2类型的.尽管实际下许多结果都是整数值,但是返回结果都是简单的NUMBER

类型的,没有定义任何的精度或刻度范围.

16、ASCII

语法: ASCII(string)

功能: 数据库字符集返回string的第一个字节的十进制表示.请注意该函数仍然称作为ASCII.尽管许多字符集不是7位ASCII.CHR和ASCII是互为

相反的函数.CHR得到给定字符编码的响应字符. ASCII得到给定字符的字符编码.

使用位置: 过程性语句和SQL语句。

17、INSTR

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

功能: 得到在string1中包含string2的位置. string1时从左边开始检查的,开始的位置为a,如果a是一个负数,那么string1是从右边开始进行

扫描的.第b次出现的位置将被返回. a和b都缺省设置为1,这将会返回在string1中第一次出现string2的位置.如果string2在a和b的规定下没有

找到,那么返回0.位置的计算是相对于string1的开始位置的,不管a和b的取值是多少.

使用位置: 过程性语句和SQL语句。

18、INSTRB

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

功能: 和INSTR相同,只是操作的对参数字符使用的位置的是字节.

使用位置: 过程性语句和SQL语句。

19、LENGTH

语法: LENGTH(string)

功能: 返回string的字节单位的长度.CHAR数值是填充空格类型的,如果string由数据类型CHAR,它的结尾的空格都被计算到字符串长度中间.

如果string是NULL,返回结果是NULL,而不是0.

使用位置: 过程性语句和SQL语句。

20、LENGTHB

语法: LENGTHB(string)

功能: 返回以字节为单位的string的长度.对于单字节字符集LENGTHB和LENGTH是一样的.

使用位置: 过程性语句和SQL语句。

21、NLSSORT

语法: NLSSORT(string[,nlsparams])

功能: 得到用于排序string的字符串字节.所有的数值都被转换为字节字符串,这样在不同数据库之间就保持了一致性. Nlsparams的作用和

NLS_INITCAP中的相同.如果忽略参数,会话使用缺省排序.

使用位置: 过程性语句和SQL语句。

分享到:
评论

相关推荐

    常用oracle字符串操作函数

    在处理数据时,字符串操作函数是数据库管理员和开发人员必备的工具。本文将深入探讨Oracle中的常用字符串操作函数,帮助你更好地理解和运用这些功能。 1. **LENGTH()** 函数: 这个函数用于返回字符串的长度,不...

    oracle-字符串去重函数

    传入一个字符串和该字符串的分割字符,返回去重后的字符串,可以直接在plsql中运行,简单的函数运用,能处理oracle中。资源仅供参考

    Oracle_Sql_中常用字符串处理函数

    Oracle Sql 中常用字符串处理函数 Oracle Sql 中提供了多种字符串处理函数,用于对字符串进行各种操作,如大小写转换、截取、连接、查找、替换等。下面是 Oracle Sql 中常用的字符串处理函数: 1. 大小写转换函数 ...

    ORACLE字符串函数

    ORACLE 字符串函数是一组用于操作和处理字符串的函数,包括连接、截取、转换、查找、替换、去除空白等操作。 1. 字符串连接函数:`string || string` 该函数用于连接两个字符串,结果是一个新的字符串。例如,`'...

    Oracle拆分字符串,字符串分割的函数

    在Oracle数据库中,处理字符串是常见的操作之一,尤其是在数据分析或数据清洗的过程中。有时我们需要将一个长字符串分割成多个部分,以便进行进一步的操作。Oracle提供了一些内置的函数来帮助我们完成这个任务。本篇...

    Oracle常用字符串处理函数

    ### Oracle常用字符串处理函数 在Oracle数据库中,字符串处理函数是非常重要的工具,它们可以帮助我们高效地管理和操作数据。本文将详细介绍几种常用的字符串处理函数及其应用方法。 #### 1. LTRIM 和 RTRIM ...

    Oracle字符相似度函数

    Oracle字符相似度函数是Oracle数据库系统提供的一种功能,用于评估两个字符串之间的相似性。这个功能在数据清洗、信息检索、文本分析等领域具有广泛的应用。在SQL查询中,我们可以直接使用这些函数来比较不同字符串...

    Oracle 基础语句 函数大全(字符串函数

    了解并熟练使用这些函数,能帮助你在Oracle数据库中更高效地进行字符串处理,无论是数据分析、报表生成还是业务逻辑实现。在实际应用中,可以根据需求灵活组合这些函数,以满足各种复杂的字符串操作需求。

    oracle通过sql实现字符串转数字oracle函数

    在Oracle数据库中,将字符串转换为数字是一项常见的操作,特别是在处理包含数字的字符串列时,可能需要进行数值计算或按照数值大小进行排序。本篇文章将深入探讨如何在SQL查询中利用Oracle提供的函数来实现这一目标...

    oracle字符串替换

    ### Oracle字符串替换:使用REGEXP_REPLACE函数 在Oracle数据库中,对字符串进行处理是一项非常常见的需求,尤其是在数据清洗、格式转换等场景下。本文将详细介绍如何利用`REGEXP_REPLACE`函数来实现字符串替换功能...

    oracle分隔字符串函数

    ### Oracle 分隔字符串函数知识点详解 #### 一、Oracle 分隔字符串函数介绍 在 Oracle 数据库中处理字符串是一项常见的需求,特别是在数据清洗、格式转换等场景下。Oracle 提供了一系列强大的字符串处理函数来帮助...

    Oracle拆分字符串函数

    Oracle拆分字符串函数

    常用的字符和字符串处理类函数

    根据提供的文件信息,我们可以归纳总结出Oracle数据库中与字符和字符串处理相关的常用函数知识点: ### 一、字符串转换函数 #### LOWER 函数 - **功能**:将输入字符串中的所有字母转换为小写。 - **语法**:`...

    Oracle10g自定义聚合函数(字符串拼接)

    * 自定义聚合函数 wmsys.wm_concat 替换办法 * 超大字符串拼接,单个字符串4000、分隔符100... * Oracle11g Release2版本引入了LISTAGG 函数,使得聚集连接字符串变得很容易。并且允许使用我们指定连接串中的字段顺序

    Oracle JSON 字符串处理实例

    Oracle数据库在JSON处理方面提供了强大的功能,特别是在处理JSON字符串时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于Web服务与应用程序之间的数据传输。在Oracle中,处理JSON字符串...

    oracle中操作字符串

    通过上述示例可以看出,在Oracle中利用`REGEXP_SUBSTR`函数可以非常灵活地处理字符串,尤其是对于包含特殊符号(如逗号、冒号等)的字符串,能够轻松地提取所需的子字符串。这对于数据处理、报表生成等应用场景具有...

    oracle_split_函数_返回数组

    在Oracle数据库中,由于内置函数不直接...需要注意的是,由于PL/SQL语言的限制,这些方法可能不如Java或其他支持内置字符串处理函数的语言那么直接和高效,但在Oracle环境中,它们提供了一种解决此类问题的有效途径。

    Oracle查找字符串中某字符出现的次数

    select f_find('Ap@2233ll@@l@@','@') from dual 返回结果为5,代表‘@’在该字符串中出现5次。 同理 select f_find('Ap@223SWEQQQ3ll@@l@@','Q') from dual---返回3,代表Q在字符串中出现了3次, select f_find('我...

Global site tag (gtag.js) - Google Analytics