我有一张这样的表:
ID | word
___________
1 | hello
1 | goodbye
1 | goodnight
2 | What
2 | Why
3 | Yes
3 | No
有没有办法收集具有相同ID的单词并将其显示在一行中,如下所示:
ID | word
_______________________________
1 | hello, goodbye, goodnight
2 | What, Why
3 | Yes, No
答案 0 :(得分:7)
使用GROUP_CONCAT()
SELECT ID, GROUP_CONCAT(word SEPARATOR ', ') word
FROM tableName
GROUP BY ID
输出
╔════╦═══════════════════════════╗
║ ID ║ WORD ║
╠════╬═══════════════════════════╣
║ 1 ║ hello, goodbye, goodnight ║
║ 2 ║ What, Why ║
║ 3 ║ Yes, No ║
╚════╩═══════════════════════════╝
答案 1 :(得分:1)
按“ID”分组并使用函数group_concat
答案 2 :(得分:1)
select ID, group_concat(word separator ', ') from yourTable group by ID;