在单行显示所有的子值,分开,它有相同的父母ID
问题描述:
答
试试这个使用的东西()在MSSQL服务器
;With cte(ParentId, ChidId)
AS
(
SELECT 1,'a' UNION ALL
SELECT 1,'b' UNION ALL
SELECT 1,'123' UNION ALL
SELECT 2,'asd' UNION ALL
SELECT 2,'222' UNION ALL
SELECT 3,'kk' UNION ALL
SELECT 3,'ffh' UNION ALL
SELECT 4,'aaa' UNION ALL
SELECT 5,'fdhgf' UNION ALL
SELECT 5,'fdddv'
)
SELECT parentid,
Stuff((SELECT DISTINCT ', ' + chidid
FROM cte i
WHERE i.parentid = o.parentid
FOR xml path ('')), 1, 1, '') AS ChidId
FROM cte o
GROUP BY parentid
MySQL和SQL数据库是非常不同的数据库引擎,将在非常不同的方式解决这个特定的问题。你在使用哪一个?此外,这里发布的链接或图片的样本数据和输出,而不是文本,这是非常粗鲁的。这也使得你不太可能得到答案,因为不是每个人都会看到你的图像。最后,你要求做的事情被认为是关系数据库的糟糕做法。关系数据库处理记录;应用程序可以在需要时汇总csv数据。 –
嘿乔尔,谢谢你的回复。首先我使用SQL。我需要SQL代码。并注册图片,我很新的发布问题在这里。我不知道如何以表格格式显示我的数据。因此我使用了这些图像。 – Akhil
**哪个** Sql?有不止一种方言,你的问题的答案很大程度上取决于你需要哪种方言(MySql使用group_concat(),而Sql Server 2008和更高版本可以使用Stuff())。对于数据...尽力而为。我们可以帮助编辑格式,但在这种情况下图像总是**更差。 –