CHARINDEX 函数搜索字符串,找到目标子字符串的第一次出现,搜索从源字符串内指定的或缺省的字符位置开始。
CHARINDEX 的参数不可为用户定义的数据类型。
如果 source 或 substring 为 NULL,则此函数返回 NULL。
如果可选的 start_position 值小于 1,或如果您省略此参数,则在 source 中的第一个逻辑字符处开始搜索 substring,如同您已指定了 1 作为起始位置一样。
如果找不到与 substring 相匹配的表达式,则 CHARINDEX 返回零(0)。否则,它返回在 substring 第一次出现的第一个逻辑字符的顺序位置。
在支持多字节字符集的语言环境中,返回值为 source 中逻辑字符之中的顺序值。在单字节语言环境中,比如缺省的语言环境,返回值等同于字节位置,在此,第一个字节位于位置 1。
在以 NLSCASE INSENSITIVE 选项创建的数据库中,如果 source 或 substring 是 NCHAR 或 NVARCHAR 数据类型,则数据库服务器在确定 source 的给定的子字符串是否与目标 substring 相匹配时,忽略字母大小写的变化形式。
CHARINDEX('com','www.ibm.com')
在上面的示例中,CHARINDEX 在缺省的起始位置 1 开始它的搜索。
CHARINDEX('w','www.ibm.com',2)