您的位置:首页 > 数据库 > Oracle

ORACLE 常用字符函数

2010-02-28 21:47 381 查看
1.LOWER

LOWER(str) 强制小写

2.UPPER

UPPER(str) 强制大写

3.INITCAP

INITCAP(str) 每个单词首字母大写

示例:SQL> select initcap('my_boy') from dual; --返回"My_Boy"

注意:单词之间用下划线("_")分割

4.CONCAT

CONCAT(str1,str2)连接函数,连接str1和str2字符串

5.SUBSTR

SUBSTR(string,a[,b])返回string的一部分,a和b以字符为单位。从字符位置a开始,长为b个字符。如果a是0,那它就被认为是1(字符串的开始位置)。如果a是正数,那么字符从左边开始数。如果是负数,则从STRING的末尾开始,从右边数。如果b不存在,那么缺省是整个字符串。如果b小于1,将返回NULL。如果a或b使用了浮点数,那么该数值首先被节取成一个整数,返回类型与STRING相同。

示例:SQL> select substr('abcde',1,2) from dual; --返回"ab"

5.LENGTH

LENGTH(str)返回string的长度。因为CHAR类型的值是填充空格的,所以如果string是CHAR数据类型,那么末尾的空格算在长度之内。如果string是NULL,函数返回NULL。

示例:

(1)SQL> select length('a b c ') from daul; --返回6

(2)SQL> select length(null) from dual; --返回NULL

6.INSTR

INSTR(string1,string2[,a][,b]) 返回string1中包含string2的位置。a和b以字符为单位。从左边开始扫描string1,起始位置是A。如果A为负数那么从右边开始扫描。第B次出现的位置将被返回。A和B缺省都为1,即返回在string1中第一次出现string2的位置。如果string2在A和B的规定下没有找到那么就返回0。位置的计算是相对于string1的开始位置的,而不关A和B的取值。

示例:

(1)SQL> select instr('abcbe','b',1,2) from dual; --返回4

(2)SQL> select instr('abcbe','b',3) from dual; --返回4

(3)SQL> select instr('abcbe','d') from dual; --返回0

7.LPAD

LPAD(列名,数字,‘要补上的字符')左补位

示例:SQL> select lpad('abc',5,'#') from dual; --返回##abc

8.RPAD

RPAD(列名,数字,'要补上的字符')右补位

示例:SQL> select rpad('abc',5,'#') from dual; --返回abc##

9.TRIM

TRIM('child_str’FROM‘parents_str') 将连续子串(只能有一个字符)从主串的两边截取出来,区分大小写。默认为截取空格。Trim(str)去掉str前后空格。

示例:

(1)SQL> select trim('a' from 'aba') from dual; --返回b

(2)SQL> select trim(' bbb ') from dual; --返回bbb

10.LTRIM

LTRIM(str) 左截取

11.RTRIM

RTRIM(str) 右截取

12.REPLACE

REPLACE(x,y[,z]) 返回值为将串x中的y串用z串替换后的结果字符串。若省略z参数,则将串x中为Y串的地方删除。

示例:

(1)SQL> select replace('abcde','c','#') from dual; --返回ab#de

(2)SQL> select replace('abcde','c') from dual; --返回abde
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: