我想找出3到4之间的数字,比如给定字符串中的#或@



我有一个类似的唯一键列

ABCDRF#72665523975#1769#00177#001#2779#NA#Pyddfdfdfd#CAOHGHGHG

其中我们有几个合成列,用#分隔
我想从这个复合密钥中找出34之间的数字

我在sql查询中使用了带有charindex字符串函数的子字符串,但无法找到预期的结果。

我想从上面的中找出00177

知道位置后,可以使用MySQLSUBSTRING_INDEX函数:

SET @str = 'ABCDRF#72665523975#1769#00177#001#2779#NA#Pyddfdfdfd#CAOHGHGHG';
SET @pos = 4
SELECT SUBSTRING_INDEX(
SUBSTRING_INDEX(@str, '#', @pos), 
'#', -1
);

最新更新