oracle字符串截取函数
(1)INSTR的用法
INSTR方法的格式为
INSTR(源字符串, 目标字符串, 起始位置, 匹配序号)
例如:INSTR('CORPORATE FLOOR','OR', 3, 2)中,源字符串为'CORPORATE FLOOR',
目标字符串为'OR',起始位置为3,取第2个匹配项的位置。
默认查找顺序为从左到右。当起始位置为负数的时候,从右边开始查找。
所以SELECT INSTR('CORPORATE FLOOR', 'OR', -1, 1) "Instring" FROM DUAL的显示结果是
Instring
——————
14
(2)substr的用法
In oracle/PLSQL, the substr functions allows you to extract a substring from
a string.
The syntax for the substr function is:
substr( string, start_position, [ length ] )
说明:
string is the source string.
start_position is the position
for extraction. The first position in the string is always 1.
length is
optional. It is the number of characters to extract. If this parameter is
omitted, substr will return the entire string.
For example:
substr('This is a test', 6, 2) would return
'is'
从第6个字符开始截取,截取两个字符
substr('This is a test', 6) would return 'is a test'
从第6个字符开始截取,一直取到最后
substr('TechOnTheNet', 1, 4) would return 'Tech'
从第1个字符开始截取,截取4个字符
substr('TechOnTheNet', -3, 3) would return 'Net'
substr('TechOnTheNet', -6, 3) would return 'The' 。
在本例中,首先是用','||a.partlist||','给parlist字段的每条记录的前面和后面都加上一个“,”号,然后利用instr函数instr(','||a.partlist||',',',',1,2)从第一数开始查找获取记录中第二个","出现的位置。
因为刚才在parlist前面和后面都加上了",",所以我们只要把刚才返回的值再减去2就可以得到角色列表中第一个角色的长度(instr(','||a.partlist||',',',',1,2)-2)。
接着利用substr函数就可以很容易的截取角色列表中的角色了。
substr(','||a.partlist||',',2,(instr(','||a.partlist||',',',',1,2)-2))
','||a.partlist||',':给parlist字段的每条记录的前面和后面都加上一个“,”号。
从第2个位置开始截取,截取的长度是角色列表中第一个角色的长度。
REPLACE(’string’,’s1’,’s2’)
string 希望被替换的字符或变量
s1 被替换的字符串
s2 要替换的字符串
SQL> select replace(’he love you’,’he’,’i’) from dual;
REPLACE(’H
----------
i love you
分享到:
相关推荐
Oracle字符集是数据库管理系统Oracle中的一个重要概念,它决定了数据库如何存储和处理文本数据。字符集不仅影响着数据的准确性和一致性,还与全球化应用、数据迁移和数据交换密切相关。本篇将深入探讨Oracle字符集的...
这个专题涵盖了从基础概念到实际操作的多个方面,旨在帮助用户全面理解并有效处理与Oracle字符集相关的各种问题。 首先,我们要了解字符集在Oracle数据库中的核心作用。字符集是用来表示和存储字符的规则集合,它...
#### 一、理解Oracle字符集 1. **字符集定义**:字符集(Character Set)是一组符号及编码规则的集合,用于存储和处理文本数据。 2. **Oracle中的字符集类型**: - **国家字符集**(National Character Set):如`...
Oracle字符相似度函数是Oracle数据库系统提供的一种功能,用于评估两个字符串之间的相似性。这个功能在数据清洗、信息检索、文本分析等领域具有广泛的应用。在SQL查询中,我们可以直接使用这些函数来比较不同字符串...
### Oracle中操作字符串 在Oracle数据库中,对字符串进行处理是一项常见的需求,特别是在处理带有特定分隔符(如逗号`,`、冒号`:`等)的字符串时。本文将详细介绍如何利用Oracle内置函数来实现从含有逗号和冒号的...
### Oracle字符集修改命令详解 #### 一、引言 在Oracle数据库的管理与维护过程中,字符集的正确设置对于确保数据的正确显示与处理至关重要。由于不同的地区和语言环境对于字符编码的需求各异,因此有时可能需要...
### Oracle字符集的查看与客户端字符集的修改 #### 一、Oracle字符集的基本概念 在Oracle数据库系统中,字符集(charset)是用于表示文本数据的编码方式。正确设置和管理字符集对于确保数据的一致性和正确性至关重要...
本文将深入探讨Oracle中的常用字符串操作函数,帮助你更好地理解和运用这些功能。 1. **LENGTH()** 函数: 这个函数用于返回字符串的长度,不包括结束的空字符。例如,`LENGTH('Hello')` 将返回5。 2. **SUBSTR()...
### Oracle字符串替换:使用REGEXP_REPLACE函数 在Oracle数据库中,对字符串进行处理是一项非常常见的需求,尤其是在数据清洗、格式转换等场景下。本文将详细介绍如何利用`REGEXP_REPLACE`函数来实现字符串替换功能...
请注意,字符集更改是一项重大操作,可能会影响到数据库中的已有数据,因此在执行前务必备份所有重要数据,并确保充分了解字符集更改可能带来的影响。此外,如果数据库中有非ASCII字符,可能需要进行数据转换或验证...
Oracle数据库在处理字符集时,有时会出现数据乱码的问题,这通常是由于字符集不匹配或者在数据传输过程中编码转换不当导致的。"ORACLE_CHAR_ToolS"是一个专门针对这类问题的工具集合,它包含了两个注册表文件,用于...
总之,Oracle字符集的正确选择和管理对于数据库的正常运行至关重要。通过快速修改注册表,我们可以便捷地在不同字符集之间切换,满足与不同数据库的兼容性需求。在日常工作中,理解并掌握字符集的相关知识,能有效...
在Oracle数据库中,将字符串转换为数字是一项常见的操作,特别是在处理包含数字的字符串列时,可能需要进行数值计算或按照数值大小进行排序。本篇文章将深入探讨如何在SQL查询中利用Oracle提供的函数来实现这一目标...
ORACLE 字符串函数是一组用于操作和处理字符串的函数,包括连接、截取、转换、查找、替换、去除空白等操作。 1. 字符串连接函数:`string || string` 该函数用于连接两个字符串,结果是一个新的字符串。例如,`'...
### 修改Oracle数据库字符集的方法 #### 背景与意义 在使用Oracle数据库的过程中,可能会遇到需要更改数据库字符集的情况。这通常发生在原有字符集不能满足新的业务需求时,例如需要支持更多的语言或特殊字符。...
Linux 下 Oracle 中文乱码字符集设置 Linux 下的 Oracle 数据库在导入数据库时出现中文乱码问题,这是因为 Oracle 数据库中的字符集格式不支持中文。解决方法是通过修改字符集格式,将其修改成支持中文的格式,这样...
在Oracle数据库中,处理字符串是常见的操作之一,尤其是在数据分析或数据清洗的过程中。有时我们需要将一个长字符串分割成多个部分,以便进行进一步的操作。Oracle提供了一些内置的函数来帮助我们完成这个任务。本篇...
由于历史的原因,早期的oracle...而在SELECT的过程中,Oracle同样检查发现数据库与客户端的字符集设置是相同的,所以它也将存入的内容原封不动地传送到客户端,而客户端操作系统识别出这是汉字编码所以能够正确显示。