我有两列user_id和标签的表。

  user_id    tags
    1    <tag1><tag4>
    1    <tag1><tag2>
    1    <tag3><tag2>
    2    <tag1><tag2>
    2    <tag4><tag5>
    3    <tag4><tag1>
    3    <tag4><tag1>
    4    <tag1><tag2>


我想将这两个记录合并为一个这样的记录。

  user_id    tags
    1    tag1, tag2, tag3, tag4
    2    tags, tag2, tag4, tag5
    3    tag4, tag1
    4    tag1, tag2


我怎么能得到这个?谁能帮我吗。
还需要将标签字段转换为数组[]。
我对典型的sql逗号没有太多了解。我只知道基本知识。我是一个红宝石家伙。

最佳答案

您应该查看mysql中的GROUP_CONCAT函数。A good example is here

在您的情况下,它将类似于:

SELECT user_id, GROUP_CONCAT(tags) FROM tablename GROUP BY user_id

关于mysql - SQL将多条记录合并为一条记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16668685/

10-11 01:47