2

我有一个名为活动的表,其中包含许多项目活动(例如,6 个活动与一个项目相关)。在项目页面上,你可以看到项目,我有一栏需要显示与项目相关的活动数量。

所以基本上,我需要一个查询或 PHP 计算,可以将项目的任务数量相加,然后动态显示这个数字!我确切地知道我需要什么,只是不知道如何实现它。

4

3 回答 3

2

您想要的是在 MySQL 查询中使用 COUNT(),或者可能是 SUM() 和 GROUP_BY()。这是文档

于 2010-03-16T14:08:39.843 回答
1
Select sum(tasks) as totalTasks from activities where project_id=<id> group by project_id;

可能是这些方面的东西?

或者如果 tasks 是外键而不是许多任务,那么:

Select count(tasks) as totalTasks from activities where project_id=<id> group by project_id;

如果不了解更多关于您的程序和表结构的信息,就很难提出更详细的执行此操作的好方法。

于 2010-03-16T14:08:28.483 回答
0

您可以使用 GROUP BY 来执行此操作:

SELECT sum(activities.activity_id) as num_activities, project.project_name, project.project_id 
FROM project LEFT OUTER JOIN activities ON activities.project_id = project.project_id
GROUP BY project.project_id

或者使用嵌套的选择语句

SELECT (SELECT count(*) FROM activities where activities.project_id = project.project_id) as num_activities , project.project_name, project.project_id 
FROM project
于 2010-03-16T14:13:41.973 回答