MySQL 查询:单个单元格中多个单元格的值

MySQL Query: Values from multiple cells in a single cell

有一个 table 名称 agents 包含代理列表,另一个 table 名称 projects, 包含项目列表和处理该代理的 ID项目。

我要查找的输出是代理列表、他们管理的项目总数和项目列表。

示例 tables:

agents

AgentID     AgentName
------      ---------
1           Name1
2           Name2
3           Name3

projects

ProjectID    ProjectName   agentID
---------    -----------   -------
1            PName1        2
2            PName2        3
3            PName3        2

期望的输出:

AgentName   No. of Projects   ProjectNames
---------   ---------------   ------------
Name2       2                 PName1
                              PName3
Name3       1                 PName2

使用下面的查询,我可以将所有项目连接到一个单元格中..

SELECT GROUP_CONCAT(projectName SEPARATOR ' , ') AS project_name FROM projects

但是我如何连接链接到 1 个代理的项目...(如所需输出 table 所示)?

这个问题有什么解决办法吗?

我将感谢来自这个社区的任何帮助...

SELECT GROUP_CONCAT(projectName SEPARATOR ' , ') AS project_name, a.AgentID
FROM   projects p
       join agents a on (p.AgentID = a.AgentID)
GROUP BY a.AgentID