假如有张表 t_student,有个字段 name , 但是 name 值的格式是这样的VBSAF43:ABCDE:343AD2E
。我现在想取出中间的ABCDE
怎么办呢?
大神说,用正则表达式。好吧,以后有时间学习学习。
在这里我用了最笨的办法,如下sql:
select substr(t.name,instr(t.name,':',1)+1,instr(t.name,':',-1)-instr(t.name,':',1)-1) from t_student t
解释如下:
instr(t.name,':',1)+1
字符A的索引位置
instr(t.name,':',-1)
第二个:的索引位置