oracle substr函式用法

2021-10-10 21:34:09 字數 2294 閱讀 7110

substr函式格式(俗稱:字元擷取函式)

格式1:substr(string

string, int a, int b);

格式2:substr(string

string, int a);

解釋:格式1:

1.string需要擷取的字串

2.a擷取字串的開始位置(注:當a等於0或1時,都是從第一位開始擷取)

3.b要擷取的字串的長度

格式2:

1.string需要擷取的字串

2.a可以理解為從第a個字元開始擷取後面所有的字串

1、select

substr(『helloworld』,0,3) value from dual;

返回結果:hel,擷取從「h」開始3個字元

2、select

substr(『helloworld』,1,3) value from dual;

返回結果:hel,擷取從「h」開始3個字元

3、select substr(『helloworld』,2,3) value from dual;

返回結果:ell,擷取從「e」開始3個字元

4、select substr(『helloworld』,0,100) value from dual;

返回結果:helloworld,100雖然超出預處理的字串最長度,但不會影響返回結果,系統按預處理字串最大數量返回。

5、select

substr(『helloworld』,5,3) value from dual;

返回結果:owo

6、select

substr(『hello world』,5,3) value from dual;

返回結果:o

w (中間的空格也算乙個字串,結果是:o空格w)

7、select

substr(『helloworld』,-1,3) value from dual;

返回結果:d

(從後面倒數第一位開始往後取1個字元,而不是3個。原因:下面紅色 第三個註解)

8、select

substr(『helloworld』,-2,3) value from dual;

返回結果:ld

(從後面倒數第二位開始往後取2個字元,而不是3個。原因:下面紅色 第三個註解)

9、select

substr(『helloworld』,-3,3) value from dual;

返回結果:rld

(從後面倒數第三位開始往後取3個字元)

10、select

substr(『helloworld』,-4,3) value from dual;

返回結果:orl

(從後面倒數第四位開始往後取3個字元)

注:當a等於0或1時,都是從第一位開始擷取(如:1和2)

注:假如helloworld之間有空格,那麼空格也將算在裡面(如:5和6)

注:雖然7、8、9、10擷取的都是3個字元,結果卻不是3 個字元; 只要 |a| ≤ b,取a的個數(如:7、8、9);當 |a| ≥

b時,才取b的個數,由a決定擷取位置(如:9和10)

11、select

substr(『helloworld』,0) value from dual;

返回結果:helloworld,擷取所有字元

12、select substr(『helloworld』,1) value from dual;

返回結果:helloworld,擷取所有字元

13、select substr(『helloworld』,2) value from dual;

返回結果:elloworld,擷取從「e」開始之後所有字元

14、select substr(『helloworld』,3) value from dual;

返回結果:lloworld,擷取從「l」開始之後所有字元

15、select

substr(『helloworld』,-1) value from dual;

返回結果:d,從最後乙個「d」開始

往回擷取1個字元

16、select

substr(『helloworld』,-2) value from dual;

返回結果:ld,從最後乙個「d」開始

往回擷取2個字元

17、select

substr(『helloworld』,-3) value from dual;

返回結果:rld,從最後乙個「d」開始

往回擷取3個字元

注:當只有兩個引數時;不管是負幾,都是從最後乙個開始 往回擷取

Oracle substr 函式詳解

substr 函式返回字串的一部分。語法 substr string,start,length string 指定的要擷取的字串。start 必需,規定在字串的何處開始。正數 在字串的指定位置開始 負數 在從字串結尾的指定位置開始 1 在字串中的第乙個字元處開始 length 可選,指定要擷取的字串...

Oracle substr 和 instr 的用法

instr 方法的格式為 instr 源字串,目標字串,起始位置,匹配序號 例如 instr corporate floor or 3,2 中,源字串為 corporate floor 目標字串為 or 起始位置為3,取第2個匹配項的位置。預設查詢順序為從左到右。當起始位置為負數的時候,從右邊開始查...

c max函式怎麼用 MAX函式怎麼用?

通常情況下,max函式主要用來返回一組數值中的最大值 語法結構 max 數值1,數值2,如下圖 所示 除了這個基本應用外,max函式其實還有很多非常巧妙的應用,我們來看下面的3個例項。1 合併單元格填充序列號 這裡其實也可以用max函式來填充序列號,輸入公式 max a 1 a1 1,按ctrl e...