在編寫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 ...