SQLserver中字符串查找功能patindex和charindex的区别

 我来答
Baby_原來
2017-08-10 · TA获得超过3402个赞
知道大有可为答主
回答量:1535
采纳率:94%
帮助的人:503万
展开全部

CHARINDEX 和 PATINDEX 函数都返回指定模式的开始位置。PATINDEX 可使用通配符,而 CHARINDEX 不可以。
这两个函数都带有2个参数:
1 希望获取其位置的模式。使用 PATINDEX,模式是可以包含通配符的字面字符串。使用 CHARINDEX,模式是字面字符串(不能包含通配符)。
2 字符串值表达式(通常为列名)。
例如,查找模式"wonderful"在 titles 表中 notes 列的某一特定行中的开始位置。

USE pubs 
  SELECT CHARINDEX('wonderful', notes) 
  FROM titles 
  WHERE title_id = 'TC3218'

例如,使用通配符查找模式"candies"在 Categories 表中的 Description 列的任一行中的开始位置:

USE Northwind 
  GO 
  SELECT CategoryID, PATINDEX('%candies%', Description)AS POSITION 
  FROM Categories 
  WHERE PATINDEX('%candies%', Description) <> 0
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式