一、字符串函数
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'