我正在尝试处理一些数据以进行 CSV 导入,但遇到了一些问题。
我的带有示例数据的表格:
node_id, comment
1,comment1
1,comment2
2,comment3
3,comment4
4,comment5
4,comment6
4,comment7
我想做的是运行一个查询,将具有相同 node_id 的所有评论放在一行中:
1,comment1,comment2
2,comment3
3,comment4
4,comment5,comment6,comment7
有人知道如何做到这一点吗?
最佳答案
您可以使用GROUP_CONCAT()
SELECT node_id, GROUP_CONCAT(comment) FROM sample_data_table GROUP BY node_id;
注意:此表结构实际上对数据进行了非规范化。这可能是一个糟糕的设计决策。
关于如果 ID 匹配,MySQL 查询将行显示为列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12271558/