【发布时间】:2015-02-26 07:56:19
【问题描述】:
WITH Numbers AS (SELECT Table.ProductNumber FROM Table WITH (NOLOCK))
返回 ProductNumber,例如 1、2、3,4,5 - 有些是逗号分隔的,所以我想拆分而不是使用 WHERE 对它们进行正确的 SELECT
到目前为止我得到的是:
SELECT @XML = CONVERT(xml,'<root><s>' + REPLACE(Numbers , ',' ,'</s><s>') + '</s></root>')
SELECT [ProductNumber ] = T.c.value('.','varchar(60)') FROM @XML.nodes('/root/s') T(c)
但我不知道如何将选定的 SQL 资源 Numbers 转换为字符串以进行 XML 转换,并且不知道 ProductNumber 在哪一行
【问题讨论】:
-
所以您的每一行都以逗号分隔格式存储 ProductNumber?
-
不是每一个。只是其中一些
-
此表中还有其他列吗?
-
是的,每个人都有唯一的 ID,我想选择带有
ProductNumber= 'something' 的 ID,可以在逗号分隔的行中
标签: sql sql-server split