我正在为一个朋友建立一个网站(一种爱好,而不是任何与职业/工作相关的东西),它将存储有关玩家、游戏和分数的信息。我已经构建了大部分报告/统计信息,但我想显示玩家达到最高分数的次数,并且想知道我是否可以改进我的想法(基于子查询)。我的“分数”表是这样设置的:
分数(id、gameID、playerID、venueID、vsID、score1、score2、score3、score4、score5、total、seasonID)——所有的 xID 都是外键。
前提是每场比赛,每名球员都有一个新条目,所以我有来自文本字段等的 PHP 插入数据。这意味着假设一个赛季有 20 场比赛,并且 score1 'John Smith' 的最高得分达到 10 4 次那个季节。但是他在 score2 上也击中了 8 次,在 score3 上击中了 6 次等等(显然,这些可能在不同的比赛中)。所以在赛季结束时,我有一张大桌子,里面有很多结果(我有 240 行,因为每支球队有 12 名球员),当我查看我的统计数据时,我想知道有多少次约翰史密斯在那个赛季打出 10 分。我显然可以做 5 个查询(或 1 个带有子查询)并添加结果来告诉我这一点,但我想知道纯粹为了我自己的发展。
所以要完成:我希望运行我的查询并得到一个告诉我的结果集:
Name | Total
John Smith | 12
Rob Smith | 11
Will Smith | 11
等等... | 1
firstName 和 secondName 存储在“player”表中(通过 playerID 外键链接到“scores”表)。如果我愿意,我希望以后能够按需修改查询,例如,如果我想看看有多少次玩家得分为 9 而不是 10(但这显然可以通过通过 PHP 传递数字来完成)。
在这里搜索(+ Google)让我走上了“加入”的道路,但我并没有取得太大的成功。请问有什么帮助吗?:)