MySQL;如果多行具有相同的 id,则生成单行

标签 mysql sql

假设我有下表,名为测试:
table

如您所见,某些行具有相同的 id。

我想将重复的行合并为一行,并为附加值创建一个新列。

结果表可能是临时表。

这就是我需要的结果:
result

有人知道怎么做吗?

最佳答案

一个简单的 GROUP_CONCAT 示例

SELECT id, GROUP_CONCAT(value SEPARATOR ';') FROM test GROUP BY id;

Group by 会将具有相同 ID 的所有记录放在一起,group_concat 会将同一分组的所有值添加在一起。

关于MySQL;如果多行具有相同的 id,则生成单行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44473475/

相关文章:

java - LIKE 中的单引号进入 JDBC 准备语句

php - 如何在 Magento 1.4 中为所有产品价格增加百分比?

php - 表单数据不会添加并且 MySql 表保持为空

java - 将Java连接到MySQL数据库

php - 从下拉菜单中选择并重新加载页面

sql - 在 SQL Server 中将日期格式转换为 DD/MMM/YYYY 格式

sql - Postgresql 多行分组依据

mysql - SQL 查询 - CASE 意外标记

Php多维数组/MySql问题

php mysql 结果每次都从 php 返回错误,但在 sql pro 和 phpmyadmin 中没问题