我需要从列中提取“SRN=123”(123 的长度是动态的,SRN= 是一致的)。数据可以是任何东西,没有一致的格式



我在尝试使用 charindex 找到 SRN=123 的终点来获取长度时遇到问题,有什么帮助吗?

SUBSTRING(t.Instructions,
                             CharIndex('SRN=', t.Instructions) + 10,
                             (CHARINDEX('SRN=', t.Instructions )-(CharIndex('SRN=[^0-9.-]', t.Instructions) + 10)))

最佳答案

select 'SRN='+left(stuff(@S, 1, charindex('SRN=', @S)+3, ''), patindex('%[^0-9]%', stuff(@S, 1, charindex('SRN=', @S)+3, '')+' ')-1)
https://data.stackexchange.com/stackoverflow/q/104003/

关于sql - 使用 SQL 从字段中选择 1 个单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6473279/

10-13 07:41