Oracle 常用函数之字符函数

1、字符串截取

substr( string, start_position, [ length ] )

例:

select substr(‘Hello World‘, 1, 2) from dual;  --返回结果为 ‘He‘  注:从字符串第一个字符开始截取长度为2的字符串

select substr(‘Hello World‘, 0, 2) from dual;  --返回结果为 ‘He‘  注:0和1都是表示截取的开始位置为第一个字符

select substr(‘Hello World‘, -4, 3) from dual;  --返回结果为 ‘orl‘  注:负数(-i)表示截取的开始位置为字符串右端向左数第i个字符

select substr(‘Hello World‘, 2) from dual;  --返回结果为 ‘ello World‘  注:省略截取字符个数,则截取至字符串末尾

select substr(‘Hello World‘, 9, 4) from dual;  --返回结果为 ‘rld‘  注:此时截取字符个数无效

select substr(‘Hello World‘, 9, -2) from dual;  --返回结果为 null  注:截取字符个数小于1时,返回值为null

2、查找子串位置

instr( string1, string2 , [start_position] , [nth_appearance ] )

例:

select instr(‘aabbaacc‘, ‘aa‘, 2, 1) from dual;  --返回结果为5  注:从字符串‘aabbaacc‘第二字符开始查找第一次出现‘aa‘的位置

select instr(‘aabbaacc‘, ‘aa‘, 2, 2) from dual;  --返回结果为0  注:从字符串‘aabbaacc‘第二字符开始‘aa‘只出现了一次

select instr(‘aabbaacc‘, ‘aa‘, -2, 2) from dual;  --返回结果为1  注:从右向左数‘aa‘第二次出现的位置

select instr(‘aabbaacc‘, ‘aa‘, 0, 1) from dual;  --返回结果为0  注:查找位置应从1开始

select instr(‘aabbaacc‘, ‘aa‘, 2) from dual;  --返回结果为5  注:省略的参数为nth_appearance,默认为1

select instr(‘aabbaacc‘, ‘aa‘) from dual;  --返回结果为1  注:省略的两个参数默认都为1

3、字符串替换

replace( string, search_string, [replace_string] )

例:

select replace(‘000123‘,‘0‘,‘ab‘) from dual;  --返回结果为‘ababab123‘  注:将字符串‘000123‘中的字符‘0‘替换成字符‘ab‘

select replace(‘000123‘,‘0‘) from dual;  --返回结果为‘123‘  注:省略参数replacement_string,将字符‘0‘替换为null,即删除所有字符‘0‘

4、字符串连接

concat(string1, string2)  或者  ||

例:

select concat(‘Hello ‘,‘world‘) from dual;  --返回结果为‘Hello world‘

select ‘Hello ‘||‘world‘ from dual;  --返回结果为‘Hello world‘

5、获取字符串长度

length(string)

例:

select length(‘ Hello ‘) from dual; --返回结果为7

6、字符串去空格

ltrim(string)  rtrim(string)  trim(string)

例:

select ltrim(‘ a  bc  ‘) s1 from dual;  --返回结果为‘a  bc  ‘  注:去除字符串左侧的空格
select rtrim(‘ a  bc  ‘) s1 from dual;  --返回结果为‘ a  bc‘  注:去除字符串右侧的空格
select trim(‘ a  bc  ‘) s1 from dual;  --返回结果为‘a  bc‘  注:去除字符串左侧和右侧的空格

7、字符串去前缀和后缀

trim([leading | trailing] trim_char from string)

例:

select trim(leading ‘0‘ from ‘0000876700‘) from dual; --返回结果为‘876700‘  注:去除前缀
select trim(trailing ‘0‘ from ‘0000876700‘) from dual;  --返回结果为‘00008767‘  注:去除后缀
select trim(‘0‘ from ‘0000876700‘) from dual;  --返回结果为‘8767‘  注:去除前缀和后缀

8、

时间: 2024-10-11 19:15:56

Oracle 常用函数之字符函数的相关文章

oracle常用数据库内置函数

函数 返回值 样例 显示 CEIL(n) 大于或等于数值n的最小整数 SELECT CEIL(10.6) FROM TABLE_NAME; 11 FLOOR(n) 小于等于数值n的最大整数 SELECT FLOOR (10.6) FROM TABLE_NAME; 10 MOD(m,n) m除以n的余数,若n=0,则返回m SELECT MOD (7,5) FROM TABLE_NAME l; 2 POWER(m,n) m的n次方 SELECT POWER (3,2) FROM TABLE_NAM

oracle 常用函数之 字符函数

-----------------------------------------------字符函数--------------------------------------------- --1: ASCII返回字符串的ASCII值 SELECT ASCII('A') FROM DUAL; SELECT ASCII('a') FROM DUAL; --2: CHR返回整数所对应的ASCII字符 SELECT CHR('65') FROM DUAL; SELECT CHR(400) FROM

Oracle单行函数之字符函数

本次主要总结了以下字符函数的作用及使用方法: 函 数说 明 ASCII返回对应字符的十进制值 CHR给出十进制返回字符 CONCAT拼接两个字符串,与 || 相同 INITCAT将字符串的第一个字母变为大写 INSTR找出某个字符串的位置 INSTRB找出某个字符串的位置和字节数 LENGTH以字符给出字符串的长度 LENGTHB以字节给出字符串的长度 LOWER将字符串转换成小写 LPAD使用指定的字符在字符的左边填充 LTRIM在左边裁剪掉指定的字符 RPAD使用指定的字符在字符的右边填充

Oracle 截取、查找字符函数(持续更新)

整理一些常用的截取.查找字符函数: 1.查找某一个字符串中某一个字符(串)出现的次数 SELECT LENGTH(REGEXP_REPLACE(REPLACE('anne<br>lily<br>jane', '<br>', '@'),  '[^@]+',  '')) COUNT FROM DUAL; --返回2 2.判断某个字符是否在源字符串出现过select instr('anne<br>lily<br>jane','<br>',1

MySQL学习17:运算符与函数之字符函数

MySQL字符函数 MySQL数据库中常用的字符函数有下面几个: (1)字符连接 首先创建一个名字为imooc的数据库,然后再使用CONCAT()字符连接函数进行查询: CREATE DATABASE imooc; SELECT CONCAT('imooc','MySQL'); SELECT CONCAT('imooc','-','MySQL'); 前期数据准备 CREATE TABLE test( first_name VARCHAR(20), last_name VARCHAR(10) );

ORACLE常用数值函数、转换函数、字符串函数

本文并不准备介绍全部的oracle函数,当前情势下,俺也还没这个时间,需要学习的东西太多了,要把多数时间花在学习经常能用上的技术方面:),所以如果是准备深入了解所有oracle函数的朋友,还是去关注:Oracle SQL Reference官方文档更靠谱一些. 本文更多将会介绍三思在日常中经常会用到的,或者虽然很少用到,但是感觉挺有意思的一些函数.分二类介绍,分别是: 著名函数篇 -经常用到的函数 非著名函数篇-即虽然很少用到,但某些情况下却很实用 注:N表示数字型,C表示字符型,D表示日期型,

oracle 常用sql 经典sql函数使用 sql语法

各种树操作, 用来查询表中带有子父节点的信息 Oracle 树操作(select-start with-connect by-prior) select m.org_id from sm_organ m start with m.org_id = '00000' connect by prior m.org_id = m.parent_org_id; [查询org_id为'00000'的所有父节点,并按倒叙排序] select distinct root,root_leve,org_Id fro

MYSQL 常见的内置函数与自定义函数

MySQL 内置函数: 字符函数 数值函数 时间日期函数 常见的数值函数的使用: 1 select avg(tdb_goods) from tdb_goods; //求字段值的平均数 内置的求和函数: 1 select sum(goods_price) from tdb_goods; //求字段值的和 常见的日期函数举例 1 select now(); 1 select current_timestamp(); 用户自定义函数: 语法 20.2.1. CREATE PROCEDURE和CREAT

Oracle中chr()和ascii()函数(附:常用字符与ascii对照表)

Oracle中chr()和ascii()函数(附:常用字符与ascii对照表) 关键字:chr() chr()函数作用:"特殊"字符特殊处理 在PLSql中可查询相对应的字码与特殊符 chr()函数示例: select chr(38) from dual;  ascii()函数示例: select ascii('&') from dual;      比如"&"到底为什么在Oracle中成了特殊字符呢?经过查找,终于揭晓了答案:原来&这个字符