Oracle instr函数与SqlServer charindex的区别

我们两清 提交于 2019-11-27 04:09:59

INSTR(C1,C2[,I[,J]])

【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

【说明】多字节符(汉字、全角符等),按1个字符计算

【参数】 C1 被搜索的字符串

            C2 希望搜索的字符串

            I 搜索的开始位置,默认为1

            J 第J次出现的位置,默认为1

【返回】数值

【示例】

select instr('abcdefgc','c',1,2) from dual;
返回:8

CHARINDEX(C1,C2[,I])

【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

【说明】多字节符(汉字、全角符等),按1个字符计算

【参数】C1希望搜索的字符串

          C2被搜索的字符串

           I 搜索的开始位置,默认为1

【返回值】数值

【实例】

select charindex('c','abcdefgc',4)

返回:8

 

【总结】需要注意的地方是虽然INSTRCHARINDEX函数实现的功能相同,但C1,C2表示的意思完全相反,而且INSTR的功能更强大,可以查找第J次出现的位置。

转载于:https://www.cnblogs.com/ivan0626/p/3664548.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!