繁体   English   中英

无法仅在列上选择具有MAX值的行

[英]Cannot select rows with MAX value only on a column

我需要从表match选择match所有字段, gameweek所有字段都具有作为gameweek的最高值,因此构建此查询:

SELECT m.id, MAX(m.gameweek) FROM `match` m WHERE round = 3 

问题是这将返回round = 3所有行

您的要求不太明确,添加一个分组依据可以解决您的问题,

仍然基于我对您问题的理解,我认为您需要以下内容,甚至不是理想的解决方案。 如果您可以澄清更多一点,可以给您更多,

SELECT * from match where gameweek = ( select max(gameweek) FROM match);

您需要对游戏周的每行与表中的最大游戏周进行比较。 尝试这样的事情。

SELECT m.id, m.gameweek
FROM `match` m 
WHERE round = 3 AND m.gameweek = (SELECT MAX(gameweek) 
                                  FROM match);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM