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