程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 為什麼oracle的內置函數中沒有leftstr,rightstr之類的字符串函數(substr使用說明大全)

為什麼oracle的內置函數中沒有leftstr,rightstr之類的字符串函數(substr使用說明大全)

編輯:Oracle數據庫基礎
為什麼Oracle的內置函數中沒有leftstr,rightstr之類的字符串函數


(substr使用說明大全)





使用ORACLE的人應該都用過Oracle中的substr函數,函數作用就不說了。
substr函數是一個功能比較強大的函數,有比較多的用法,本文將詳細說明。


以下是函數調用原型
substr(string,postion[,substring_length])

string:原字符串,沒什麼好講的,就是要檢索的原字符串
postion:開始檢索的位置,
    如果大於0則表示從第一個字符開始向後算
    如果小於0則表示從最後一個字符開始向前算,如果向前時小於原字符串的長度則表達式返回空
    如果等於0則認為是從第一個字符串開始
    如果有小數則把小數捨去


substring_length:檢索的字符串長度
    如果大於0則表示返回的字符數,如果計算後原字符串的字符數小於substring_length,則返回到最後的字符串
    如果小於等於0則返回空
    如果有小數則把小數捨去
    如果沒有這個參數則表示取到最後

以下是substr使用的各種示例

取左邊的3個字符
substr(''ABCDEFG'',1,3)=''ABC''

取從第3個字符開始的2個字符
substr(''ABCDEFG'',3,2)=''CD''

取右邊的3個字符
substr(''ABCDEFG'',-3)=''EFG''

取從第6個字符開始到最後的字符串
substr(''ABCDEFG'',6)=''FG''

取倒數第5個字符開始的2個字符
substr(''ABCDEFG'',-5,2)=''CD''


如果向前時小於原字符串的長度則表達式返回空
substr(''ABCDEFG'',-8,7)=''''


小數捨去
substr(''ABCDEFG'',2.6,2.2)=''BC''


備注:
substr是按字符來計算,一個字母或漢字都按一個字符計算如:
substr(''智能ABC'',2,2)=''能A''
如果想要按字節來計算則可以采用substrb函數,用法一樣
substrb(''智能ABC'',3,4)=''能AB''

當然還有另外幾個按不同編碼計算的函數
substrc:按Unicode編碼,
substr2:按UCS2編碼,
substr4:按UCS4編碼。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved