![](/img/trans.png)
[英]Concatenating values in mysql where multiple rows in one table relate to one row in another table without displaying several rows
[英]Concatenating values in mysql where multiple rows in one table relate to one row in another table
我有两个mysql表,一个列出文章名称,另一个列出与每篇文章相关的作者,如下所示:
article_id title
=======================
1 art1
2 art2
3 blob
article_id name surname
=====================================
1 jack smith
1 jill jones
1 rob edgar
2 billy bryce
3 dick bonsor
3 jeff kucick
我正在尝试创建一个查询,该查询将返回以下内容:
article_id title author
=========================================================
1 art1 jack smith, jill jones, rob edgar
2 art2 billy bryce
3 blob dick bonsor, jeff kucick
我一直在查看group_concat和concat_ws,但是在尝试返回上述结果时我一直没有成功。 如果您对此有任何想法,我将不胜感激!
非常感谢。
select
a.article_id,
a.title,
group_concat(concat(p.name, ' ', p.surname)) as author
from
article a
inner join author p on p.article_id = a.article_id
group by
a.article_id,
a.title
或者,如果您想使用concat_ws:
select
a.article_id,
a.title,
group_concat(concat_ws(' ', p.name, p.surname)) as author
from
article a
inner join author p on p.article_id = a.article_id
group by
a.article_id,
a.title
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.