SQL Server存储过程里根据分隔符折分不同的内容放到临时表里做查询条件,以下分隔符使用“/”,可修改不同分隔符
--根据分隔符折分不同的内容放到临时表---------------
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS id,
LTRIM(RTRIM(Item.value('.', 'NVARCHAR(MAX)'))) AS W001 into #tmp1
FROM (SELECT CAST('<M>' + REPLACE(@条件, '/', '</M><M>') + '</M>' AS XML) AS x) AS source
CROSS APPLY x.nodes('/M') AS Split(Item)
如:
@条件 = ‘100/200/300/400'
select * from #tmp1 查询结果如下
W001
100
200
300
400