我有2张桌子。一个显示进行的比赛(日期,地点,结果,对手等),另一个显示击球局的详细信息(得分等) 两个表都有一个主键,该主键将击球与特定游戏相关联。
当 MAX(最高)分数记录在表 BATTING 中时,我正在尝试从游戏中返回 RIVAL 列,但目前我不确定如何做到这一点。
2张表格可以在这里找到
https://i.stack.imgur.com/rGaK9.png
这些表中的示例是(RUNSSCORED中的最大分数为101,因此从GAMEINDEX返回链接的RIVAL,即"Ferndale"
任何帮助都会很棒。谢谢。
这是你要找的吗?
select OPPONENT
from GAMES
where GAMESINDEX in
(select GAMESINDEX from BATTING order by RUNSSCORED desc limit 1);
如果没有唯一的最大 RUNSSCORED 值,则答案可能不是确定性的。
如果您想要在这种情况下有多个获胜者,您可以使用
select OPPONENT
from GAMES natural join BATTING
WHERE RUNSSCORED in (select MAX(RUNSSCORED) from BATTING);
SELECT G.OPPONENT, MAX(B.RUNSSCORED)
FROM GAMES AS G
INNER JOIN BATTING AS B
ON G.GAMESINDEX = B.GAMESINDEX