oracle数据库截取字符串substr函数使用举例

 更新时间:2025年01月08日 10:14:34   作者:锦衣夜行?  
在Oracle数据库中可以使用SUBSTR函数来截取字符串,这篇文章主要给大家介绍了关于oracle数据库截取字符串substr函数使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

格式1:substr(string string,int index,int length)

理解:substr(被截取的字符串,下标即开始截取的位置-整数,截取的长度-整数)

适用于有截取的长度限制的场景。

格式2:substr(string string,int index)

理解:substr(被截取的字符串,下标即开始截取的位置-整数)

适用于无长度限制,从下标位置开始进行截取一直截取到最后

注意:substr()函数中的下标开始截取的位置,其中0和1指代的都是首位,没有区别。当下标位置是负数时,就是从右向左开始查找下标位置,然后自下标位置再从左往右开始截取。(很多解释这个函数的,就是说从从右向左截取,这个说法是错误的,不太理解多吧?没事儿看例子吧,或许看后理解了)

举例 格式1:

理解:substr(被截取的字符串,下标即开始截取的位置-整数,截取的长度-整数)

适用于有截取的长度限制的场

select substr('世事洞明皆学问,人情练达即文章',1,2) from dual;--输出‘世事' 

select substr('世事洞明皆学问,人情练达即文章',0,2) from dual;--输出‘世事'   开始位置0和1,结果是一样的

select substr('世事洞明皆学问,人情练达即文章',2,3) from dual;--输出‘事洞明' 

当开始位置为负数时,对比结果,发现规律
select substr('世事洞明皆学问,人情练达即文章',-3,2) from dual;--输出‘即文' 

select substr('世事洞明皆学问,人情练达即文章',-4,2) from dual;--输出‘达即' 

select substr('世事洞明皆学问,人情练达即文章',-7,2) from dual;--输出‘人情' 

举例 格式2:

格式2:substr(string string,int index)

理解:substr(被截取的字符串,下标即开始截取的位置-整数)

适用于无长度限制,从下标位置开始进行截取一直截取到最后

select substr('无人扶我青云志,我自踏雪至山巅',1) from dual;--输出‘无人扶我青云志,我自踏雪至山巅' 

select substr('无人扶我青云志,我自踏雪至山巅',0) from dual;--输出‘无人扶我青云志,我自踏雪至山巅' 

select substr('无人扶我青云志,我自踏雪至山巅',3) from dual;--输出‘扶我青云志,我自踏雪至山巅' 

当开始位置为负数时,对比结果,发现规律
select substr('无人扶我青云志,我自踏雪至山巅',-3) from dual;--输出‘至山巅'' 

select substr('无人扶我青云志,我自踏雪至山巅',-4) from dual;--输出‘雪至山巅' 

select substr('无人扶我青云志,我自踏雪至山巅',-7) from dual;--输出‘我自踏雪至山巅' 

总结 

到此这篇关于oracle数据库截取字符串substr函数使用的文章就介绍到这了,更多相关oracle截取字符串substr函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Oracle 解决ORA-00257 Archiver error 报错问题解决

    Oracle 解决ORA-00257 Archiver error 报错问题解决

    订单投资交易环境进行 impdb 数据泵恢复数据,执行到一半,报错终止,归档策略保留时间较长,或归档频率过高,导致数据库挂载盘符空间不足,本文给大家分享Oracle 解决ORA-00257 Archiver error 报错问题解决,感兴趣的朋友一起看看吧
    2023-12-12
  • Oracle 11g数据库常用对象创建与管理方法详解

    Oracle 11g数据库常用对象创建与管理方法详解

    这篇文章主要介绍了Oracle 11g数据库常用对象创建与管理的相关资料,Oracle 11g数据库是企业级关系型数据库管理系统,它提供了强大的数据管理功能,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-11-11
  • Oracle 数据库连接查询SQL语句

    Oracle 数据库连接查询SQL语句

    oracle 连接查询分如下几种方法,大家可以看看,整理了下oracle 内外链接。
    2009-08-08
  • oracle DBMS_SQL.PARSE的使用方法和示例

    oracle DBMS_SQL.PARSE的使用方法和示例

    DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/SQL块,并将其存储在动态游标中,示例展示了如何使用该过程,资源管理、错误处理和权限是使用DBMS_SQL包时应注意的事项,感兴趣的朋友一起看看吧
    2025-02-02
  • Oracle数据库把多行转一列逗号分割两种方法

    Oracle数据库把多行转一列逗号分割两种方法

    Oracle将行转换为列是指将关系型数据库中的行数据转换为列数据的操作,这篇文章主要给大家介绍了关于Oracle数据库把多行转一列逗号分割两种方法的相关资料,需要的朋友可以参考下
    2024-07-07
  • Oracle用户密码过期和用户被锁的解决方法

    Oracle用户密码过期和用户被锁的解决方法

    这篇文章主要介绍了Oracle用户密码过期和用户被锁的解决方法,需要的朋友可以参考下
    2017-04-04
  • Oracle expdp/impdp 及 exp/imp 命令详解

    Oracle expdp/impdp 及 exp/imp 命令详解

    使用Oracle数据库的过程中会经常对数据进行导入导出,Oracle 数据库提供 expdp / impdp (Data Pump,数据泵)以及 exp / imp 两种工具进行数据的导入导出,可以对数据库进行逻辑备份,这篇文章主要介绍了Oracle expdp/impdp 及 exp/imp 命令详解,需要的朋友可以参考下
    2024-07-07
  • orcale中的to_number方法使用

    orcale中的to_number方法使用

    这篇文章主要介绍了orcale中的to_number方法使用,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Oracle 查看后台正在执行的 SQL 语句(最新推荐)

    Oracle 查看后台正在执行的 SQL 语句(最新推荐)

    本文给大家介绍了Oracle中查看后台SQL的多种方法,包括查询动态性能视图(如v$session、v$sqlarea)、使用监控工具(如OEM)及ASH,通过SQL_ID、执行计划和资源消耗等字段分析SQL性能与执行状态,感兴趣的朋友一起看看吧
    2025-07-07
  • Oracle 11g用户修改密码及加锁解锁功能实例代码

    Oracle 11g用户修改密码及加锁解锁功能实例代码

    这篇文章主要介绍了Oracle 11g用户修改密码及加锁解锁功能实例代码,需要的朋友可以参考下
    2017-11-11

最新评论