-- Oracle字符串处理
--转小写
select lower('ABC') from dual
--转大写
select Upper('abc') from dual
--首字母转大写 是字符串里面的首个字母,字母前面如果有数字或者其他符号不会有影响
select INITCAP('_abc123') from dual
--字符串连接
select '123'||'abc' from dual
select concat('abc','123') from dual
-- 字符串补齐 不足10位的左、右侧使用冒号补齐
select Lpad('colname',10,':') from dual
select Rpad('colname',10,':') from dual
-- 字符串删减,默认从左/右/两侧删除空格,也可以是别的
select LTRIM(' colname') from dual
select LTRIM(' colname','') from dual
select LTRIM('。。。colname。。。','。') from dual
select RTRIM('。。。colname。。。','。') from dual
-- 这个写法不一样(依次是删除两侧,删除开头,删除结尾的'。')
select TRIM('。' from '。。。colname。。。') from dual
select TRIM(leading '。' from '。。。colname。。。') from dual
select TRIM(trailing '。' from '。。。colname。。。') from dual
-- 字符串长度 这边中英文长度一样
select LENGTH('abc') from dual
select LENGTH('abc我在种花家') from dual --8
-- 字符串截取
-- 从第3个字符开始截取,默认是一直到末尾
select SUBSTR('abc我在种花家',3) from dual --c我在种花家
--从第3个字符开始截取,截取的长度是5
select SUBSTR('abc我在种花家',3,5) from dual --c我在种花
-- 从倒数第3个开始截取,默认一直到末尾
select SUBSTR('abc我在种花家',-3) from dual --种花家
-- 从倒数第3个开始截取,长度是2,长度超了也没报错
select SUBSTR('abc我在种花家',-3,2) from dual -- 种花
-- 字符串替换(原始字符串,需要替换的字符串,替换的字符串)
select replace('abcddgg','dd','aa') from dual