在sql查詢中,諸如substr,left,right等字符切分函數的應用場景非常大,只需要指定字符,開始序位,結束序位就能很方便的切分得到我們想要的結果,但是對於數據序位不統一的,比如一個name字段裏有%test1#,%test#,%fshkfjdshfkds#,我們想要兩個%裏的結果,只不過%的序位不是唯一的,就不能直接substr了
這時候就需要我們的強大函數instr,該函數是返回某字符在字符串裏的序位,比如instr('test1','e') 則返回2
那麼我們把substr與instr結合就可以做出來上面的結果
substr(name,instr(name,'%') + 1,instr(name,'#') -1)