Oracle中的字符处理方法
- 向左补全字符串
lpad(字段名,填充长度,填充的字符)
select lpad('1',4,'0') from dual;
- 向右补全字符串
rpad(字段名,填充长度,填充的字符)
select rpad('1',4,'0') from dual;
- 返回字符串小写
select lower('STUDENT') from dual;
- 返回字符串大写
select upper('admin') from dual;
- 单词首字符大写
select initcap('admin') from dual;
- 返回字符串长度
select length('中国') from dual;
- 截取字符串
substr(字符串,截取开始位置,截取长度)
select substr('123456789',2,3) from dual;
- 获得字符串出现的位置
instr(源字符串, 目标字符串,[ 起始位置, ][匹配序号])
select instr('12345678','56') from dual;
- 删除字符串左侧空格
select ltrim(' 00000') from dual;
- 删除字符串右侧空格以及两侧空格
rtrim()函数和trim()函数。
- 串联字符串
SELECT CONCAT('hello', ' world') AS TEXT FROM DUAL;
- 翻译字符串
translate(string,from_str,to_str)
SELECT TRANSLATE('abcdefghij','abcdef','123456') FROM dual;
- 反转字符串
当为汉字时候,会出现乱码,因为中文是双字节字符。
- 在列的右边粘贴字符
SELECT RPAD('HELLO', 10, '*') FROM DUAL;
- 替换字符串
REPLACE('string','被替换','替换')
SELECT REPLACE('HE LOVE YOU', 'HE' ,'I') FROM DUAL;
- 如果X是空值,返回VALUE,否则返回X
NVL(X, VALUE)
SELECT NVL(NULL, '2') FROM DUAL; SELECT NVL('33', '2') FROM DUAL;
- 如果X是空值,返回VALUE1, 否则返回VALUE2
NVL2(X, VALUE1, VALUE2)
SELECT NVL2(NULL, '3', '4') FROM DUAL;
oracle中处理字符串的函数还有许多,我就不一一列举了。
作者:我爱物联网
出处:http://yydcdut.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://yydcdut.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。