oracle字符串操作常见问题

我们在编写sql时经常需要对字符串进行操作 , 下面就为大师介绍字符串操作常用的sql语句 。

oracle字符串操作常见问题

文章插图
方式/
1从一张表导数据到另一张时经常会碰到字符串超长的环境 , 这时要查抄所有超长的数据 。
这时会用到两个函数:
lengthb(string)函数计较字符串占几多字节 。
length(string)函数计较字符串占几多字符 。  

oracle字符串操作常见问题

文章插图

2需要注重的是每个中文字符是占3个字节的:

oracle字符串操作常见问题

文章插图

3varchar2在字段类型可以界说最年夜长度为4000 。
但在plsql界说变量时长度可最年夜界说为32767 。
但将它做为返回值时可能会报错: ORA-06502: PL/SQL: numeric or value error: character string buffer too small(数字或值错误 :  字符串缓冲区太小)

oracle字符串操作常见问题

文章插图

4当字符串为空时可以将字符串替代为某个值 。
这时会用到函数nvl(string,default value) 。

oracle字符串操作常见问题

文章插图

5当字符串中含有空格时可以利用trim(string) 去失落字符串首从头至尾的空格 , 字符串中心含有的空格会保留 。

oracle字符串操作常见问题

文章插图

6若是只需要删除左边的空格可以利用ltrim(string)  , 若是只需要删除右边的空格可以利用rtrim(string) 。

oracle字符串操作常见问题

文章插图

7我们常利用trim函数来删除字符串中的空格 , 但其实这个函数还有更多壮大的功能 。 利用trim([leading | trailing | both] '字符1' from '字符串2')可以将字符串2中左边| 右边| 双方的字符1删除 。

oracle字符串操作常见问题

文章插图

8当需要将字符串中的某些字符用其它字符替代时 , 我们可以利用REPLACE(string , '字符1' , '字符2')函数 , 把字符串中的字符1用字符2替代 。

oracle字符串操作常见问题

文章插图

9我们经常还需要截取字符串 , 利用substr(string,起头位置 ,截取字符长度)函数 , 把字符串从起头位置起头 , 截取指定字符长度的字符串 。
【oracle字符串操作常见问题】这个函数起头位置的设置初学者也轻易犯错 。

oracle字符串操作常见问题

推荐阅读