在sql的单个查询中使用charindex,交叉应用和子串
我有一个查询如下,从字符串
'dbo.proudction @prodid= ''1,2,10,4,5,6,7,8,13,16,17,3'' ,@stock= 0'
显示@prodid= ''1,2,10,4,5,6,7,8,13,16,17,3''
:
declare @T table(Col1 varchar(100))
insert into @T values ('dbo.proudction @prodid= ''1,2,10,4,5,6,7,8,13,16,17,3'' ,@stock= 0')
select
substring(Col1, Start, Stop-Start)
from @T
cross apply
(select charindex('''', Col1)+1) c1(Start)
cross apply
(select charindex('''', Col1, Start)) c2(Stop)
你能帮我理解这个查询的工作吗?
没有找到相关结果
已邀请:
1 个回复
糕泰灌
使用charindex找到字符串中的第一个引号。第二个cross apply定位字符串中的第二个引号。然后substring将在第一个引号和第二个引号之间提取文本。 结果