查看23在[1,2,3,4,23,7,5,6]中的位置,可以返回5,第五个值,求大佬帮忙讲解
使用charindex()函数 语法:charindex( short,long,start)
charindex()用来在一段字符串中搜索字符串并返回一个整数,整数为子串在父串中匹配的位置,如果不存在,则放回零
比如:
select charindex('789','123456789',2): 在‘123456789’中从第二位开始搜索‘789’,返回的值为:7
————————————————
版权声明:本文为CSDN博主「yushuir」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yushuir/article/details/83008160
oracle中CHARINDEX和PATINDEX函数常常用来在一段字符中搜索字符或者字符串。
此外不确定你说的SQL数据库类型,具体函数或有可能稍有区别。
MSSQL 语法 select CHARINDEX('zhang', 'Devil_Zhang') 运行结果:7
MySQL 语法 select instr('Devil_Zhang','zhang') 运行结果:7
额,审题有误了,你说这个是想要表达什么?正好某个字段保存的字符串就是类似数组的一串数?想用SQL实现查询是第几个?
这可能有的负责了,我想到的是写自定义函数了,常规思路是拆解为表含数字字段和序号,查找数字的序号即可。如果是Oracle,或者可以结合 正则表达式函数-REGEXP_INSTR试试