SQL CHARINDEX 函數、InStr 函數、PATINDEX 函數、stuff函數

來源:互聯網
上載者:User

CHARINDEX 函數
返回字元或者字串在另一個字串中的起始位置。
CHARINDEX 函數調用方法如下:
CHARINDEX ( expression1 , expression2 [ , start_location ] )
Expression1 是要到 expression2 中尋找的字元中,start_location 是 CHARINDEX 函數開始在 expression2 中找expression1 的位置。
CHARINDEX 函數返回一個整數,返回的整數是要找的字串在被找的字串中的位置。假如 CHARINDEX 沒有找到要找的字串,那麼函數整數“0”。

InStr 函數
返回某字串在另一字串中第一次出現的位置。
InStr 函數調用方法如下:
InStr([start, ]string1, string2[, compare])
參數
start
可選項。數值運算式,用於設定每次搜尋的開始位置。如果省略,將從第一個字元的位置開始搜尋。如果 start 包含 Null,則會出現錯誤。如果已指定 compare,則必須要有 start 參數。
string1
必選項。接受搜尋的字串運算式。
string2
必選項。要搜尋的字串運算式。
compare
可選項。指示在計運算元字串時使用的比較類型的數值。有關數值,請參閱“設定”部分。如果省略,將執行二進位比較。

兩個函數的性質非常效果一樣就是搜尋一個字元是否出現在另外一個字串裡面

PATINDEX 函數
PATINDEX 函數返回字元或者字串在另一個字串或者運算式中的起始位置,PATINDEX 函數支援搜尋字串中使用萬用字元,這使PATINDEX函數對於變化的搜尋字串很有價值。
和 CHARINDEX 函數一樣,PATINDEX 函數返回搜尋字串在被搜尋字串中的起始位置。假如有這樣一個PATINDEX 函數:
      PATINDEX(’%BC%’,’ABCD’)
      這個 PATINDEX 函數返回的結果是2,這和 CHARINDEX 函數一樣。這裡的 % 標記告訴 PATINDEX 函數去找字串 “BC”,不管被搜尋的字串中在 “BC” 的前後有多少字元!

stuff的功能:刪除指定長度的字串並在指定的起始點插入另一組字元

STUFF ( character_expression , start , length , character_expression )

character_expression :操作的字元,

start:刪除和插入的起始點,

length:刪除的長度,

character_expression :要插入的字元

Select stuff("abcdef",2,3,"ghijk")

go

結果:aghijk

-------------------------------------------------------------------------------------------

功能:返回模式在字串中第一次出現的位置

patindex( '%pattern%' , expression )

pattern:要尋找的模式

expression:被找的字串

select patindex('%jinweida%','123jinweida54')

go

結果:4

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.