1.取,之前的文字,如果是.就把,換掉
SELECT SUBSTR('abc,123,TYT', 1 ,INSTR('abc,123,TYT', ',', 1, 1)-1)
FROM dual;

ANS : abc

2.取,中間的文字,如果是.就把,換掉
SELECT SUBSTR('abc,123,TYT', INSTR('abc,123,TYT',',', 1, 1)+1,
INSTR('abc,123,TYT',',',1,2)-INSTR('abc,123,TYT',',',1,1)-1)
FROM dual;


ANS : 123

3.取,最後的文字,如果是.就把,換掉
SELECT SUBSTR('abc,123,TYT', INSTR('abc,123,
TYT',',', 1, 2)+1)
FROM dual;

ANS : TYT


如 :

1.取,之前的文字,如果是.就把,換掉
 SELECT SUBSTR('808001772.1.2', 1 ,INSTR('808001772.1.2', '.', 1, 1)-1)
FROM dual;

ANS : 808001772

2.取,中間的文字,如果是.就把,換掉
SELECT SUBSTR('808001772.1.2', INSTR('808001772.1.2','.', 1, 1)+1,
INSTR('808001772.1.2','.',1,2)-INSTR('808001772.1.2','.',1,1)-1)
FROM dual;

ANS : 1

3.取,最後的文字,如果是.就把,換掉
SELECT SUBSTR('808001772.1.2', INSTR('808001772.1.2','.', 1, 2)+1)
FROM dual;

ANS : 2

詳細可參考 
http://www.psoug.org/reference/substr_instr.html

arrow
arrow
    全站熱搜

    oracleD2K 發表在 痞客邦 留言(0) 人氣()