標籤:結束 res string 欄位 art select rtp abc 負數
from:http://1055592535.iteye.com/blog/1676235
在Oracle中
可以使用instr函數對某個字串進行判斷,判斷其是否含有指定的字元。
在一個字串中尋找指定的字元,返回被尋找到的指定的字元的位置。
文法:
instr(sourceString,destString,start,appearPosition)
instr(‘源字串‘ , ‘目標字串‘ ,‘開始位置‘,‘第幾次出現‘)
其中sourceString代表源字串;
destString代表要從源字串中尋找的子串;
start代表尋找的開始位置,這個參數可選的,預設為1;
appearPosition代表想從源字元中尋找出第幾次出現的destString,這個參數也是可選的, 預設為1
如果start的值為負數,則代表從右往左進行尋找,但是位置資料仍然從左向右計算。
傳回值為:尋找到的字串的位置。
-------------------------------------------------------------
對於instr函數,我們經常這樣使用:從一個字串中尋找指定子串的位置。例如:
SQL> select instr(‘abcdefgh‘,‘de‘) position from dual;
POSITION
----------
4
從1開始算 d排第四所以返回4
SQL>select instr(‘abcdefghbc‘,‘bc‘,3) position from dual;
POSITION
----------
9
從第3個字元開始算起 第3個字元是c,所以從3開始以後的字串找尋找bc,返回9
---------------------------
從第1個字元開始,尋找第2次出現子串的位置
SQL> select instr(‘qinyinglianqin‘,‘qin‘, 1, 2) position from dual;
POSITION
----------
12
----------------------------------------------------------------------
SUBSTR()函數
1.用處:是從給定的字元運算式或備忘欄位中返回一個子字串。
2.文法格式:SUBSTR(cExpression,nStartPosition [,nCharactersReturned])
其中,cExpression指定要從其中返回字串的字元運算式或備忘欄位;
nStartPosition用於指定返回的字串在字元運算式或備忘欄位中的位置,
nCharactersReturned用於指定返回的字元數目,預設時返回字元運算式的值結束前的全部字元。
3.舉例:STORE‘abcdefghijlkm‘ To mystring
SUBSTR(mystring ,1,5) 顯示 "abcde" 1 從第一個字元開始 截取的字元中,包括第一個字元
SUBSTR(mystring ,6) 顯示 "fghijklm"
SUBSTR(mystring,-2)顯示“km” 最右邊一個字元是-1,最右邊左邊的字元是-2,然後預設是從左向有取剩下的全部的字元
SUBSTR(mystrng,-4)顯示“jlkm”
oracle的常用函數 instr() 和substr()函數