首页 > 解决方案 > 如何在查询中汇总特定字符串

问题描述

我想在特定列中将行与重复项合并,以便列出特定项目而排除其他项目

我曾尝试使用string_agggroup_byself joins,我觉得我可能只是需要一个更好的self join,但我不确定。

one  two  three four
1    1    a     NULL
2    4    b      e
3    7    c      x
3    7    c      z

我希望它看起来像这样(相同的元素保持未隔离)

one  two  three
1    1    a     NULL
2    4    b      e
3    7    c      x,z

标签: sqlsql-serverstring-aggregation

解决方案


如果您使用的是 MySQL:

SELECT one, two, three, GROUP_CONCAT(four)
FROM table
GROUP BY one, two, three

否则,这在 RDBMS 中是一件坏事,因为这不是关系操作。您应该在项目的客户端执行此操作。


推荐阅读