sql中特殊字串的擷取技巧

2021-08-27 10:14:47 字數 556 閱讀 5038

在編寫sql時,總會遇到對某個有特殊含義的字段值,擷取其中一段需要的值返回,如有這樣乙個字串ssoc-***-13-001,現在需要返回13這個值,可以用如下oracle 函式實現:

select substr('ssoc-dswb-13-001', instr('ssoc-dswb-12-001', '-', 1, 2) + 1,2)

from dual

其中用到了substr函式和instr函式

1.substr(string,start_position,[length])    求子字串,返回字串

解釋:string 元字串

start_position   開始位置(從0開始)

length 可選項,子字串的個數

2.instr(string,substring,position,ocurrence)查詢字串位置

解釋:string:源字串

substring:要查詢的子字串

position:查詢的開始位置

ocurrence:源字串中第幾次出現的子字串

SQL中字串擷取函式

1 left name,4 擷取左邊的4個字元列 select left 201809,4 年 結果 2018 2 right name,2 擷取右邊的2個字元 select right 201809,2 月份 結果 09 3 substring name,5,3 擷取name這個字段 從第五個字元...

sql中字串擷取函式

1.left str,len 擷取左邊的len個字元,right str,len 擷取右邊的len個字元 eg select left 每天都要開心 2 result 每天 2.substring str,n 擷取str從第n個字元開始之後的所有字元 eg select substring 每天都要...

SQL中字串擷取函式

第一種 用到的函式 substring charindex 從字串 abc123 的第乙個字元開始擷取,共擷取兩個字元,最後得到 ab select substring hello 163.com 1,charindex hello 163.com 1 第二種 elect id,substring ...