SQL Server常用的字符串函數(shù)梳理
今天給大家分享一下SQLServer常用的字符串函數(shù)知識(shí)筆記,希望對(duì)大家能有所幫助!
1、ASCII(字符串表達(dá)式)
作用:返回表達(dá)式最左側(cè)字符串的ASCII代碼值。
示例:SELECT ASCII('ABC'),ASCII('A') --返回結(jié)果都是65 計(jì)算的是第一個(gè)字符串的ASCII代碼值
2、CHAR(整數(shù)數(shù)值)
作用:將整數(shù)數(shù)值類型的ASCII代碼值轉(zhuǎn)換為字符。整數(shù)數(shù)值是介于0到255之間的整數(shù)。
示例:SELECT CHAR(57),CHAR(69) -- 返回結(jié)果 9 E
3、CHARINDEX(eg1,eg2,startindex)
作用:返回字符串中指定表達(dá)式的開始位置
參數(shù)說明:
eg1:要查找的字符串
eg2:是包含要查找字符串的表達(dá)式
startindex:指定在eg1中搜索eg2時(shí)的開始位置,如果未指定該參數(shù)或者指定了0、負(fù)數(shù)時(shí),默認(rèn)從第一個(gè)字符串開始檢索。檢索到了返回字符串的位置,檢索不到返回0。
示例:SELECT CHARINDEX('科學(xué)','計(jì)算機(jī)信息科學(xué)技術(shù)',0) --返回結(jié)果 6
4、DIFFERENCE(char_eg,char_eg)
作用:返回一個(gè)0~4之間的整數(shù)數(shù)值,表示兩個(gè)字符串表達(dá)式SOYNDEX值之間的差異。0表示幾乎不同或完全不同。4 表示幾乎相同或完全相同。
參數(shù)說明:
char_eg:為char或varchar類型的表達(dá)式,也可以是text類型,但長(zhǎng)度只有前8000個(gè)字節(jié)有效。
示例:SELECT DIFFERENCE('A','AB'),DIFFERENCE('A','0'),DIFFERENCE('A','A')
--輸出結(jié)果3 0 4
5、LEFT/RIGHT(eg,int_eg)
作用:從字符串左側(cè)/右側(cè)截取指定長(zhǎng)度的字符,然后返回。
參數(shù)說明:
eg:可以是任何能夠隱式轉(zhuǎn)換為varchar、nvarchar的數(shù)據(jù)類型。
int_eg:要截取的字符長(zhǎng)度。必須是大于等于0的整數(shù)。等于0表示為空字符串。
示例:SELECT Right('ABC',2),LEFT('ABC',1) --輸出結(jié)果 BC A
6、LEN(str_eg) 計(jì)算字符串長(zhǎng)度
作用:返回字符串表達(dá)式的長(zhǎng)度,其中不包含末尾的空格。
示例:SELECT LEN(123),LEN(' 123 '),LEN('123 ') -- 返回結(jié)果 3 4 3
7、LOWWER/UPPER(str_eg) 大小寫轉(zhuǎn)換函數(shù)
作用:實(shí)現(xiàn)對(duì)字符串的大小寫轉(zhuǎn)換
示例:SELECT LOWER('ABcDe'),UPPER('ABcDe') -- 輸出結(jié)果 abcde ABCDE
8、LTRIM/RTRIM(str_eg) 去掉字符串表達(dá)式 左/右空格
示例:SELECT LTRIM(' abc '),RTRIM('a bc ') --輸出結(jié)果 abc a bc
9、NCHAR(int_eg)
作用:根據(jù)Unicode標(biāo)準(zhǔn)的定義,返回指定整數(shù)代碼的Unicode字符。int_eg是介于0~65535之間的正整數(shù)。
示例:SELECT NCHAR(68) --輸出結(jié)果D
10、PATINDEX("%pattern",eg)
作用:返回表達(dá)式中某模式第一次出現(xiàn)的起始位置如果沒找到返回0。
參數(shù)說明:
pattern:一個(gè)文字字符串,可以使用通配符,pattern之前和之后必須跟一個(gè)%字符(檢索第一個(gè)或最后一個(gè)字符除外)
eg:是要在其中查找pattern模式的字符串?dāng)?shù)據(jù)類型表達(dá)式
示例:SELECT PATINDEX('%工業(yè)%','蘇州工業(yè)園區(qū)') --輸出結(jié)果 3
11、QUOTENAME(eg1,eg2)
作用:返回帶有分隔符的Unicode字符串
參數(shù)說明:
eg1:由Unicode字符串構(gòu)成的字符串。
eg2:分隔符單個(gè)字符串。可以是單引號(hào)、雙引號(hào)、方括號(hào)、小括號(hào)等。默認(rèn)是方括號(hào)。
示例:SELECT QUOTENAME('abc','('),QUOTENAME('abc') --輸出結(jié)果 (abc) [abc]
12、REPLACE(eg1,eg2,eg3) 字符串替換函數(shù)
作用:將eg1中所有的eg2替換為eg3。
示例:SELECT REPLACE('abcdefade','e','f')-- 輸出結(jié)果 abcdffadf
13、REPLICATE(eg1,int_eg) 指定次數(shù)的重復(fù)表達(dá)式
參數(shù)說明:
eg1:字符串表達(dá)式
int_eg:指定重復(fù)的次數(shù)
示例:SELECT REPLICATE('北京',3)--輸出結(jié)果北京北京北京
14、REVERSE(eg) 字符串逆向轉(zhuǎn)換
作用:將字符串逆向轉(zhuǎn)換
示例:SELECT REVERSE('12345')--輸出結(jié)果 54321
15、SPACE(int_eg) 重復(fù)空格的個(gè)數(shù)
示例:SELECT 15、SPACE(5)
16、STUFF(char_eg1,startindex,length,char_eg2)
作用:刪除指定長(zhǎng)度的字符,并在指定的位置插入另一組字符。
參數(shù)說明:
char_eg1:字符串表達(dá)式
startindex:指定刪除或插入的開始位置
length:指定要?jiǎng)h除的字符數(shù)
char_eg2:要插入的字符串表達(dá)式
示例:SELECT STUFF('12345',2,3,'000')--輸出結(jié)果 10005
17、SUBSTRING(eg,start,length) 字符串截取
參數(shù)說明:
eg:字符串表達(dá)式
start:指定開始截取的位置的整數(shù)。
length:指定要截取的長(zhǎng)度
示例:SELECT SUBSTRING('12345',2,3)--輸出結(jié)果 234