首先學(xué)習(xí)兩個(gè)函數(shù)
1.substring 返回字符、binary、text 或 image 表達(dá)式的一部分。
基本語法:SUBSTRING ( expression , start , length )
expression:字符串、二進(jìn)制字符串、text、image、列或包含列的表達(dá)式
start:整數(shù),指定子串的開始位置 注:SQL中"1"表示字符串中的第一個(gè)字符,而.NET中"0"表示第一個(gè)字符
length:整數(shù),指定子串的長度(要返回的字符數(shù)或字節(jié)數(shù))
2.patindex 返回指定表達(dá)式中某模式第一次出現(xiàn)的起始位置;如果在全部有效的文本和字符數(shù)據(jù)類型中沒有找到該模式,則返回零。
基本語法:PATINDEX ( '%pattern%' , expression )
pattern:字符串??梢允褂猛ㄅ浞?,但 pattern 之前和之后必須有 % 字符(搜索第一個(gè)和最后一個(gè)字符時(shí)除外)。pattern 是短字符數(shù)據(jù)類型類別的表達(dá)式
expression:表達(dá)式,通常為要在其中搜索指定模式的列,expression 為字符串?dāng)?shù)據(jù)類型類別
下面結(jié)合上面的兩個(gè)函數(shù),截取字符串中指定的字符
復(fù)制代碼 代碼如下:
declare @a varchar(50)
set @a='2009年7月15日星期五'
select substring(@a,1,4) --獲取年份2009
declare @b int
set @b=patindex('%日%',@a) --獲取'日'這個(gè)字符在字符串中的位置,即10
select substring(@a,6,@b-5) --獲取日期'7月15日'
您可能感興趣的文章:- SQL中 patindex函數(shù)的用法詳解
- SQLserver中字符串查找功能patindex和charindex的區(qū)別
- sqlserver 中charindex/patindex/like 的比較
- SQL之patindex函數(shù)的用法案例詳解