1.substr字符串截取
格式:subtr(字符串X,n,m) 从第n位开始到第m位截取字符串X
select substr('hello',1,3) from dual;----结果:hel
2.replace和translate字符替换
replace是字符串的替换,格式:replace(字符串X,A,B) 将字符串X中的A替换为B
translate是单个字符替换,格式:translate(str,from_str,to_str)将字符串str中from_str的字符转换成to_str的(from_str的单个字符与to_str对应,如果to_str少了的则为空)
select replace('hello,xiaoming','hello','hi'),translate('abcdefg','abg','xyz'),translate('abcdefg','abcdefg','xyz') from dual;
----结果:hi,xiaoming, xycdefz ,xyz
3.concat和 || 字符串拼接
concat只能连接两个字符串,格式:concat(字符串X,字符串Y) 拼接字符串X和字符串Y
|| 可拼接多个字符,格式:字符串A||字符串B||字符串C
select concat('ABC-',123),'ABC-'||123||'-DEF' from dual;-----结果:ABC-23,ABC-123-DEF
4.upper 将字符串转出大写,lower将字符串转成小写 ,initcap将字符串首字母转成大写
select upper('hello,XIAOMING'),lower('hello,XIAOMING'),initcap('hello,XIAOMING') from dual;
----结果:HELLO,XIAOMING , hello,xiaoming , Hello,xiaoming
5.lpad和rpad补位函数
格式:lpad(字符X,n,字符Y) 当字符X不足n位时,左边用字符Y补足
rpad(字符X,n,字符Y) 当字符X不足n位时,右边用字符Y补足
select lpad(11,8,0),rpad(11,8,0) from dual;---结果:00000011,11000000
6.trim,ltrim,rtrim删除字符,一般用于删除空格
格式:trim(字符串X) 删除字符串X两边的空格
trim(leading 字符X from 字符串Y) 删除字符串Y左侧的字符X
trim(trailing 字符X from 字符串Y)删除字符串Y右侧的字符X
trim(both 字符X from 字符串Y)删除字符串Y两边的字符X
ltrim(字符串Y,字符串X)删除字符串Y左侧的字符串X
rtrim(字符串Y,字符串X)删除字符串Y右侧的字符串X
select trim(' ABC '),trim(leading 'A' from 'AABBCCAA'),trim(trailing 'A' from 'AABBCCAA'),trim(both 'A' from 'AABBCCAA'),ltrim('AABBBbCCBAA','ABC' ),rtrim('AABBBbCCBAA','ABC' ) from dual;
---结果:ABC , BBCCAA , AABBCC , bCCBAA , AABBb