gpt4 book ai didi

mysql - 使用 SQL 或 PHP 选择值

转载 作者:行者123 更新时间:2023-11-29 18:28:44 25 4
gpt4 key购买 nike

我对 SQL 不太了解,因此我在项目中使用 PHP 做了很多解决方法,因为我无法找出要使用的查询,因此似乎在 PHP 中使用循环和数组来完成它总是更容易。

好吧,对于我的问题 -> 我知道一个变量,seasonId,它引用锦标赛(一个赛季内),它引用锦标赛玩家,它引用它的结果和主要玩家(其中拥有所有球员数据,但不包括锦标赛特定信息)。锦标赛和锦标赛玩家之间的关系是1对1,锦标赛玩家和玩家之间的关系是n对1。我想要实现的是显示每个玩家的结果总和(位于结果表中)。

现在我的解决方案是选择所有具有 seasonId = x 的锦标赛,并通过 while 循环迭代它们,选择他们的玩家,然后在某个数组中计算玩家结果。这个解决方案很丑陋,而且这次看起来比 SQL 更难。

我的表结构:

Season   | Tourney   | TourneyPlayer | Results  | Player
------ | ------- | ------------- | ------- | --------
SeasonId | TourneyId | tp_id | resultid | playerid
SeasonId | tourneyid | result
resultid
playerid

因此,假设我有 X 赛季,并且有内部锦标赛 X1、X2、X3,每个锦标赛中只有一名玩家 Y,因此锦标赛中有 Y1、Y2、Y3,那么查询将返回 3 个结果的总和(对于玩家Y 参加了 3 场比赛)。

谢谢:)

最佳答案

几个连接就可以解决问题:

SELECT SUM(result)
FROM results r
JOIN tourneyplayer tp on tp.resultid = r.resultid
JOIN tourney t ON t.tourneyid = tp.tourneyid
WHERE t.seasonid = x

关于mysql - 使用 SQL 或 PHP 选择值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45914585/

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