连接 Mysql 中的字段
Concatenate fields in Mysql
我有一个table这样的
id name value
1 Ram a
2 John b
3 Ram c
4 Ram d
5 John e
我想要这样的输出
name value
Ram a,c,d
John b,e
有什么方法可以执行这个查询吗?
更新:
Table 格式:
id field1 value field2
1 val1 a null
2 val2 b null
3 val1 c null
4 val2 d null
5 null e val1
5 null f val1
5 null g val2
5 null h val2
输出:
field1 field2 value
val1 null a,c
val2 null b,d
null val1 e,f
null val2 g,h
有什么办法可以做到吗?
您可以使用group_concat
select
name, group_concat(value separator ',') as value
from table_name
group by name
此外,如果您希望对值进行排序,您可以在 group concat
中使用 order by
作为
select
name, group_concat(value order by value) as value
from table_name
group by name
使用这个:
SELECT field1, field2, GROUP_CONCAT(value ORDER BY value SEPARATOR ',')
AS value FROM table
GROUP BY field1, field2;
SELECT name, GROUP_CONCAT(value) AS value FROM my_table group by name
group_concat
函数应该可以为您解决问题:
SELECT name, GROUP_CONCAT(value) AS value
FROM my_table
GROUP BY name
Mysql GROUP_CONCAT 可以帮到你。请参阅此 link https://www.percona.com/blog/2013/10/22/the-power-of-mysqls-group_concat/
中的示例
你必须使用group_concat
select name,group_concat(value) from tablename group by name
我有一个table这样的
id name value
1 Ram a
2 John b
3 Ram c
4 Ram d
5 John e
我想要这样的输出
name value
Ram a,c,d
John b,e
有什么方法可以执行这个查询吗?
更新:
Table 格式:
id field1 value field2
1 val1 a null
2 val2 b null
3 val1 c null
4 val2 d null
5 null e val1
5 null f val1
5 null g val2
5 null h val2
输出:
field1 field2 value
val1 null a,c
val2 null b,d
null val1 e,f
null val2 g,h
有什么办法可以做到吗?
您可以使用group_concat
select
name, group_concat(value separator ',') as value
from table_name
group by name
此外,如果您希望对值进行排序,您可以在 group concat
中使用 order by
作为
select
name, group_concat(value order by value) as value
from table_name
group by name
使用这个:
SELECT field1, field2, GROUP_CONCAT(value ORDER BY value SEPARATOR ',')
AS value FROM table
GROUP BY field1, field2;
SELECT name, GROUP_CONCAT(value) AS value FROM my_table group by name
group_concat
函数应该可以为您解决问题:
SELECT name, GROUP_CONCAT(value) AS value
FROM my_table
GROUP BY name
Mysql GROUP_CONCAT 可以帮到你。请参阅此 link https://www.percona.com/blog/2013/10/22/the-power-of-mysqls-group_concat/
中的示例你必须使用group_concat
select name,group_concat(value) from tablename group by name