1、instr函式
語法:引數:
string1:源字串,要在此字串中查詢。
string2:要在string1中查詢的字串.
start_position:代表string1 的哪個位置開始查詢。此引數可選,如果省略預設為1. 字串索引從1開始。如果此引數為正,從左到右開始檢索,如果此引數為負,從右到左檢索,返回要查詢的字串在源字串中的開始索引。
樣例:1
select
instr(
'hello world!'
,
'l'
)
from
dual;
結果:3
1
select
instr(
'hello world!'
,
'l'
,4,2)
from
dual;
結果:10
--可利用此函式來檢查string1中是否包含string2,如果返回0表示不包含,否則表示包含
1
select
instr(
'hello world!'
,
'world'
)
from
dual;
結果:7
--假設員工表staff,包含工號,名字,部門,職業等等
--檢索工號分別是』a10001′,』a10002′的員工的名字,部門,職業資訊
1
select
code ,
name
, dept, occupation
from
staff
where
code
in
(
'a10001'
,
'a10002'
);
或:1select
code ,
name
, dept, occupation
from
staff
where
code =
'a10001'
or
code =
'a10002'
;
等效:1
select
code ,
name
, dept, occupation
from
staff
where
instr(
'a10001,a10002'
,code)>0;
備註:減少單引號的個數
--模糊查詢
1
select
code,
name
, dept, occupation
from
staff
where
code
like
'%001%'
;
等效:1
select
code,
name
, dept, occupation
from
staff
where
instr(code,
'001'
) > 0;
2、substr函式
語法:substr( string, start_position, [ length ] )
引數:string:要擷取的字串
start_position:擷取開始位置
length:擷取長度
樣例:1
select
substr(
'hello world!'
,3)
from
dual;
結果:llo world!
1
select
substr(
'hello world!'
,3,6)
from
dual;
結果:llo wo
1
select
substr(
'hello world!'
,0)
from
dual;
結果:hello world!
1
select
substr(
'hello world!'
,1)
from
dual;
結果:hello world!
1
select
substr(
'hello world!'
,-0)
from
dual;
結果:hello world!
1
select
substr(
'hello world!'
,-1)
from
dual;
結果:!
1
select
substr(
'hello world!'
,-5)
from
dual;
結果:orld!
Oracle中的instr函式
在oracle pl sql中,instr函式返回string2在string1中出現的位置,語法如下 例項1.從起始位置開始搜尋,第一次出現子串的位置 sql select instr chen linbo bobo12082119 bo 1,1 from dual instr chen linb...
Oracle中的instr 函式
格式一 instr string1,string2 instr 源字串,目標字串 注 在oracle plsql中,instr函式返回要擷取的字串在源字串中的位置。只檢索一次,也就是說從字元的開始到字元的結尾就結束。1 select instr helloworld l from dual 返回結果...
Oracle中 Instr 這個函式
sql charindex 字串 字段 0 charindex administrator muserid 0 oracle instr 字段,字串 1,1 0 instr muserid,administrator 1,1 0 在專案中用到了oracle中 instr 這個函式,順便仔細的再次學習...