oracle實現字串擷取,查詢,替換

2021-07-08 09:33:59 字數 1059 閱讀 7019

1、字串擷取:substr

substr(string, start_position, [length]),其中,string是元字串,start_position為開始位置(注意首位從0開始),length是可選項,表示子字串的位數。

eg 1、substr('abcdefg', 0);    -- 返回結果是:abcdefg,從0位開始擷取後面所有。

eg 2、substr('abcdefg', 2);    -- 返回結果是:cdefg,從2位開始擷取後面所有。

eg 3、substr('abcdefg', 0, 3);  -- 返回結果是:abc,從0位開始往後擷取3個字元長度。

eg 4、substr('abcdefg', 0, 100);  -- 返回結果是:abcdefg,雖然100超出了元字串長度,但是系統會按元字串最大數量返回,不會影響返回結果。

eg 5、substr('abcdefg', -3);  -- 返回結果是:efg,如果是負數,則從尾部往前數,擷取-3位置往後的所有字串。

2、字串查詢:instr

eg 1、instr('abcdabcdaef', 'ab');   -- 返回結果是:1,因為instr字串索引從0開始。

eg 2、instr('abcdabcdaef', 'da', 1, 2);   -- 返回結果是:8,返回第二次出現'da'的位置。

3、替換字串:replace

replace(str1, str2, str3)

其表示的意思是:在str1中查詢str2,凡是出現str2的地方,都替換成str3。

eg 1、replace('abcdefg', 'abc', 'abc');  -- 返回結果是:abcdefg。

eg 2、replace('abcdefg', 'abc', '');   -- 返回結果是:cdfg,abc被替換成空字元。

eg 3、replace('abcdefg', 'abc');   -- 返回結果是:cdfg,當不存在第三個引數時,abc直接被刪掉,類似於第二種效果。

ORACLE字串擷取

substr 函式 擷取字串 語法 substr string,start,length string 表示源字串,即要擷取的字串。start 開始位置,從1開始查詢。如果start是負數,則從string字串末尾開始算起。length 可選項,表示擷取字串長度。示例 select substr h...

Oracle擷取字串和查詢字串

oracle 擷取字元 substr 檢索字元位置 instr case when then else end語句使用 收藏 常用函式 substr和instr 1.substr string,start position,length 求子字串,返回字串 解釋 string 元字串 start p...

Oracle擷取字串和查詢字串

oracle 擷取字元 substr 檢索字元位置 instr case when then else end語句使用 收藏 常用函式 substr和instr 1.substr string,start position,length 求子字串,返回字串 解釋 string 元字串 start p...