gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-29 11:29:34 27 4
gpt4 key购买 nike

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

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

$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();

最佳答案

您缺少 GROUP BY:

SELECT
game_events.*,
SUM(cash_pledges.amount) AS total_pot
FROM game_events
INNER JOIN cash_pledges
WHERE cash_pledges.event=game_events.id
GROUP BY game_events.id
ORDER BY total_pot DESC

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

关于php - 按不同表的 SUM(列) 排序 - FetchAll 仅返回第一个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37646973/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com