2016-04-22 136 views
1

有一个表名称agents,其中包含代理程序列表以及另一个名为projects,的表格,其中包含在该项目上工作的代理程序的项目和ID列表。MySQL查询:来自单个单元格中多个单元格的值

我在寻找的输出是代理列表,他们正在管理的项目的总数和项目列表。

示例表:

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 

使用B elow查询我能来连接所有的项目在一个单元..

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

但我怎么可以连接挂1剂项目......(如图所需的输出表)?

有没有解决这个问题的方法?

我会喜欢这个社群的任何帮助......

+0

你需要这种准确的格式? –

+0

是的,因为我想把它作为一个报告.. –

回答

1
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 
+0

感谢它的工作..但是有可能在一个行中获得一个项目? –

+0

尝试玩分隔符。它不会影响工作台,但应用程序会将数据移动到下一行 –

相关问题