【发布时间】:2014-04-10 16:07:19
【问题描述】:
我有一个包含球队、用户和积分交易的联赛系统。
积分表中的每一行都链接到一个用户的 ID,每个用户行都链接到一个团队 ID。
当我从数据库中提取团队时,我还想返回一个列,其中包含该团队的总积分,方法是将与该团队中的用户关联的所有积分相加。我有以下代码可以独立返回正确的总点数:
SELECT SUM(ar_points.amount) AS total_points FROM ar_teams, ar_users, ar_points WHERE ar_teams.id = ar_users.team_id AND ar_users.id = ar_points.user_id AND ar_teams.id = :id
当我拉取正常的团队信息时,它会将结果推送到每个团队的对象中:
$sql = $db->query("SELECT * FROM ar_teams");
$sql->setFetchMode(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE,'Team');
$sql->execute();
return $sql->fetchAll();
我想组合这两个查询,以便将总分值作为另一个属性放入对象中。
【问题讨论】:
-
你需要按一些列进行分组。