T SQL字串處理函式

2021-07-26 00:25:59 字數 1857 閱讀 4948

t-sql字串處理函式

函式名

描述

示例

substring

用於從字串中提取子串,提取的位子從被指定的位置開始;

substring(string, start, length)

select substring('asdfghj', 1, 3);

返回; asd

leftright

他們分別返回輸入字串中從左邊或右邊開始指定個數的字元;

left(string, n),

right(string, n)

select left('asdf', 3);

返回; asd

lendatalength

返回輸入字串中的個數(對於普通字元,這兩個數字是相同的。而對於unicode字元,每個字元需要兩個位元組的儲存空間,因此,字串的字元數是位元組數的一半。如果要得到位元組數,則應該使用datalength)

len(string);

select len(n'asdfg')

返回; 5

select datalength(n'asdfg')

返回; 10

charindex

返回字串中某個子串第一次出現的其實位置。

charindex(substring, string [, start_pos])

select charindex('' , 'ao ***')

patindex

返回字串中某個模式第一次出現的其實位置

patindex(pattern, string)

select patindex('%[0-5]%', 'asd123fghj')

返回; 4

replace

將字串中出現的所有某個子串替換為另乙個字串

replace(string, substring1, substring2)

select replace ('1-a 2-b',  '-', ':')

返回; 1:a 2:b

replicate

以指定的次數複製字串值

replicate(string, n)

select replicate('asd', 3)

返回; asdasdasd

stuff

先刪除字串中的乙個子串,再插入乙個新的自字串作為替換。

stuff(string, pos, delete_length, insertstring)

select stuff('asd', 2, 1, 'abc');

返回; aabcd

like

檢查字串是否能夠匹配指定的模式。

like'%《任意長度字元包括空字元》,_《任意單個字元》 ,[ ]

《一列字元如'asd'> ,-

《包含乙個字元範圍如『a-e』> ,^《表示不屬於指定字元列或範圍的任意單個字元如'^asd'> ,escape《轉義符,用來搜尋特殊萬用字元如, _ , %>'

T sql將字串分割函式

create function dbo func splitstring str nvarchar max split varchar 10 returns t table c1 varchar 100 asbegin declare i int declare s int set i 1 set ...

T SQL常用的字串函式

常用的字串函式有 一 字元轉換函式 1 ascii 返回字元表示式最左端字元的ascii 碼值。在ascii 函式中,純數字的字串可不用 括起來,但含其它字元的字串必須用 括起來使用,否則會出錯。2 char 將ascii 碼轉換為字元。如果沒有輸入0 255 之間的ascii 碼值,char 返回...

T SQL 定義分割字串的函式

一 按指定符號分割字串,返回分割後的元素個數,方法很簡單,就是看字串中存在多少個分隔符號,然後再加一,就是要求的結果。create function get strarraylength str varchar 1024 要分割的字串 split varchar 10 分隔符號 returns in...