【发布时间】:2012-11-23 04:50:21
【问题描述】:
我查看了许多在 SQL Server 中模拟“组连接”功能的解决方案。虽然我想制作一个更易于阅读的解决方案,但我不知道该怎么做。
我有一个看法:
ParentID | ChildName
其中包含记录,例如:
1 | Max
1 | Jessie
2 | Steven
2 | Lucy
2 | Jake
3 | Mark
我想“分组 Concat”这些以获得:
1 | Max and Jessie
2 | Steven, Lucy and Jake
3 | Mark
因此,如果只有 1 个孩子,则返回名称,如果有多个,则将最后 2 个用 ' 和 ' 连接,其他所有用 ', ' 连接。
在不求助于 CLR 的情况下如何做到这一点,我有点坚持,我不想这样做。我对函数很满意 - 但速度是个问题,我如何确定子编号以便我可以在 ' 和 '、'、' 或 '' 之间进行选择?
【问题讨论】:
-
+1 个有趣的问题。您不想按父母对孩子的数量进行分组,而是想知道他们的名字显示和连接。 :)
标签: sql sql-server sql-server-group-concat