我有三个表分别命名为Table1,Table2,Table3。表1有三个列。它们是studentId,studentName,taskName。表2有两个列,分别是ID和学生姓名。表2列出了不参加特定模块的学生的姓名。表3包含两个列,分别将每个任务分配给主管。主管可以分配多个任务。在这里,我使用以下查询来计算每个主管的任务数:

SELECT Table3.supervisor, COUNT(*) as Total FROM issues LEFT OUTER JOIN
Table2 ON Table1.studentName=Table2.studentName LEFT OUTER JOIN Table3 ON
Table1.taskName=Table3.taskName WHERE Table2.userId is null GROUP BY Table3.supervior


任何人都可以帮助编写查询来查找为参加某些模块的学生分配的任务总数吗?

最佳答案

我整理了一下。
答案是:

SELECT SUM(Total) FROM (
SELECT Table3.supervisor, COUNT(*) as Total FROM issues LEFT OUTER JOIN
Table2 ON Table1.studentName=Table2.studentName LEFT OUTER JOIN Table3 ON
Table1.taskName=Table3.taskName WHERE Table2.userId is null GROUP BY Table3.supervior) as summation

关于mysql - 使用带有左外部联接的mySQL查询的sum()函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49273959/

10-13 08:57