substr(string ,1,3) 函數解讀:取string 中重左往右取3字長的字符串。
結果為:str
從右往左呢?
應該有另一個函數來提供這樣的功能吧!
事實上,從右往左也是這個函數 只是參數的不同而已。
substr(String,-1,3) 功能解讀:取string中右邊1位開始取3位。
結果為:g
substr(string,start,length)
string - 指定的要截取的字符串。
start - 必需,規定在字符串的何處開始。正數 - 在字符串的指定位置開始,負數 - 在從字符串結尾的指定位置開始,0 - 在字符串中的第一個字符處開始。
length - 可選,指定要截取的字符串長度,缺省時返回字符表達式的值結束前的全部字符。
例如:select substr('abcdefg',3,4) from dual; 結果是cdef
select substr('abcdefg',-3,4) from dual; 結果efg
注意:字符串中的第一個位置始終為1。以下兩個sql查詢的結果相同:
例如:select substr('abcdefg',0,3) from dual; 結果是abc
select substr('abcdefg',1,3) from dual; 結果是abc
與java類中的substring區別:
substring(int beginIndex, int endIndex) :從指定的 beginIndex 處開始,到指定的 endIndex-1處結束,字符串中的第一個位置始終為0。endIndex,可選,缺省時返回始於指定索引處的字符,一直到此字符串末尾。
例如:"unhappy".substring(2) returns "happy"
"hamburger".substring(3,8) returns "burge"
以上所述就是本文的全部內容了,希望大家能夠喜歡。