按不同表的SUM(col)排序 - FetchAll仅返回第一个结果

时间:2016-06-05 21:30:56

标签: php mysql sql pdo

我有一个电子竞技活动表game_events,每个活动的赞助/抵押资金总额可以从cash_pledges表中计算出来。

此查询有效,但它仅返回game_events表中的第一个结果,即使使用FetchAll()也是如此。我想获取所有匹配的事件,并按total_pot创建的SUM(amount)字段对其进行排序。

$query = 'SELECT * , 
                SUM(cash_pledges.amount) AS total_pot 
           FROM game_events 
             INNER JOIN cash_pledges 
           WHERE cash_pledges.event=game_events.id  
           ORDER BY total_pot DESC';
$r = $pdb->Query($query)->FetchAll();

1 个答案:

答案 0 :(得分:1)

您缺少GROUP BY:

Firebase-generated Dynamic Link Domain

否则只返回一个结果,其中包含所有cash_pledges.amounts的总和。