标签:查找 表达式 index 文本 商业 位置 学习交流 collate 区分大小写
CHARINDEX:查某字符(串)是否包含在其他字符串中,返回字符串中指定表达式的起始位置。
PATINDEX:查某字符(串)是否包含在其他字符串中,返回指定表达式中某模式第一次出现的起始位置;如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。从1开始下标(两者的区别在于,后者支持模糊匹配,前者是全匹配)
1.SELECT PATINDEX(‘%[^0-9]%‘, ‘1235X461‘) 结果 5
2.SELECT PATINDEX(‘%[^0-9]%‘, ‘12350461‘) 结果 0
3.SELECT PATINDEX(‘%[0-9]%‘, ‘SUYLLG0‘) 结果 7
4.SELECT PATINDEX(‘%[0-9]%‘, ‘SUYLLG01‘) 结果 7
5.select PATINDEX(‘%ter%‘,‘interesting data‘) 结果 3
6.select PATINDEX(‘%t_ng%‘,‘interesting data‘) 结果 8
7.SELECT CHARINDEX(‘5‘, ‘1235X461‘) 结果 4 没找到就是0 第一个参数是查找的字符(串),第二个是被查找字符串
8.select charindex(‘test‘,‘this Test is Test‘COLLATE Latin1_General_CS_AS) 结果0 区分大小写CS
9.select charindex(‘test‘,‘this Test is Test‘COLLATE Latin1_General_CI_AS) 结果6 不区分大小写CI
(自己实践和整理别人资料,不做商业用途,只做学习交流使用)
标签:查找 表达式 index 文本 商业 位置 学习交流 collate 区分大小写
原文地址:https://www.cnblogs.com/wxlhyg/p/9046343.html