Oracle基础 (十一)字符串函数

一、字符串函数

LENGTH(char1,char2)

SELECT LENGTH('abc def gh') FROM dual;  --获取字符串的长度,包含空格

结果:10

 

CONCAT(char1,char2)

SELECT CONCAT('abc','def') FROM dual;  --连接两个字符串

结果:'abcdef'

SELECT 'abc'||'def' FROM dual;          --连接两个字符串

结果:'abcdef'

 

INITCAP(CHAR):  

SELECT INITCAP('hello') FROM dual;      --首字母转换为大写

结果:Hello

 

LOWER(CHAR):

SELECT LOWER('HELLO WORLD') FROM dual;  --将字符串转换为小写

结果:hello world

 

UPPER(CHAR):

SELECT UPPER('hello world') FROM dual;  --将字符串转换为大写

结果:HELLO WORLD

 

LTRIM(char,set):

SELECT LTRIM('  hello world  ') FROM dual;  --去掉字符串左侧的空格

结果:'hello world   '

 

RTRIM(char,set):

SELECT RTRIM('  hello world  ') FROM dual;  --去掉字符串右侧的空格

结果:'  hello world'

 

TRANSLATE(char,from,to):

SELECT Translate('abcdefabcdef','abc','123') FROM dual;  --如果替换字符连续则将abc替换为123



结果:'123def123def'



SELECT Translate('abcdefabcdef','ace','123') FROM dual;  --如果字符不连续则按字母进行替换



结果:'1b2d3f1b2d3f'

 

REPLACE(char,search_str,replace_str)  

SELECT REPLACE('abcdefabcdef','abc','123') FROM dual;  --将字符串abc替换为123

结果:123def123def

 

INSTR(char,substr[,pos])

SELECT Instr('abcdefabcdef','def') from dual;  --查找def在字符串中的位置,从1开始

结果:4
SELECT Instr('abcdefabcdef','def',5) from dual; --从指定位置开始查找def在字符串中的位置,从1开始 结果为:10 select instr('abcedfghedfghijk','edf',1,2) from dual;--查找edf在字符串中出现第二次的位置,从1开始 结果为:9

 

 

SUBSTR(char,pos,len)

SELECT Substr('abcdefgh',3) FROM dual;  --从第3位开始截取字符串,到末尾

结果:'cdefgh'

SELECT Substr('abcdefgh',3,2) FROM dual;  --从第3位开始截取2个字符串

结果:'cd'

 

你可能感兴趣的:(oracle基础)