您的位置:首页 > 数据库

SQL CHARINDEX 函数、PATINDEX 函数、stuff函数

2016-11-25 00:16 555 查看
CHARINDEX 函数

返回字符或者字符串在另一个字符串中的起始位置。

CHARINDEX 函数调用方法如下:

CHARINDEX ( expression1 , expression2 [ , start_location ] )

Expression1 是要到 expression2 中寻找的字符中,start_location 是 CHARINDEX 函数开始在 expression2 中找expression1 的位置。

CHARINDEX 函数返回一个整数,返回的整数是要找的字符串在被找的字符串中的位置。假如 CHARINDEX 没有找到要找的字符串,那么函数整数“0”。

select CHARINDEX ('cd','abcdef')
GO
/* 3 */


PATINDEX 函数
PATINDEX 函数返回字符或者字符串在另一个字符串或者表达式中的起始位置,PATINDEX 函数支持搜索字符串中使用通配符,这使PATINDEX函数对于变化的搜索字符串很有价值。

和 CHARINDEX 函数一样,PATINDEX 函数返回搜索字符串在被搜索字符串中的起始位置。假如有这样一个PATINDEX 函数:

   

Select    PATINDEX('%BC%','ABCD')
GO


      这个 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
/* aghijkef  */


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

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

patindex( '%pattern%' , expression
)

pattern:要查找的模式

expression:被找的字符串

select patindex('%jinweida%','123jinweida54')
GO
/* 4 */
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: