Sql 将格式连接到简单格式
我在一个单元格中连接了多个数据,以分隔符分隔。下面是我需要的数据和输出的屏幕截图。我知道如何使用For XML将输出转换为连接格式,但无法将连接转换为输出格式 我正在使用SQLServer2008。请帮忙完成这项工作 问候,,Sql 将格式连接到简单格式,sql,sql-server,Sql,Sql Server,我在一个单元格中连接了多个数据,以分隔符分隔。下面是我需要的数据和输出的屏幕截图。我知道如何使用For XML将输出转换为连接格式,但无法将连接转换为输出格式 我正在使用SQLServer2008。请帮忙完成这项工作 问候,, Ratan因为两列中都有复合字符串,所以我更喜欢将交叉连接与转换为xml一起使用,两次: SELECT MemberId = y.i.value('(./text())[1]', 'nvarchar(1000)'), TokenId = u.j.v
Ratan因为两列中都有复合字符串,所以我更喜欢将交叉连接与转换为xml一起使用,两次:
SELECT MemberId = y.i.value('(./text())[1]', 'nvarchar(1000)'),
TokenId = u.j.value('(./text())[1]', 'nvarchar(1000)')
FROM
(
SELECT
m = CONVERT(XML, '<i>'
+ REPLACE(MemberId, ',' , '</i><i>')
+ '</i>').query('.'),
t= CONVERT(XML, '<j>'
+ REPLACE(TokenId, ',' , '</j><j>')
+ '</j>').query('.')
FROM member_tokens
) AS a
CROSS APPLY m.nodes('i') AS y(i)
CROSS APPLY t.nodes('j') AS u(j)
到目前为止你试过什么?Google SQL Split函数也有一些想法。可能重复@RRO请不要犹豫,提供反馈,您请求了善意的帮助,我为您做了很多尝试Hanks,这对我很有用。你能解释一下最后两行交叉应用m.node'I'作为yI吗。再次非常感谢。我试图通过使用split函数来实现这一点,但没有得到完整的输出,因为它在两列中都有复合字符串。非常欢迎您,作为交叉应用的查询m.node'I'是使用连接的memberid,它在提取memberid的节点'I'的每一行中都转换为XML。由于y'i'是一个别名,可以将提取的值用作类似tablefield的内容。再次感谢,这非常有用