gpt4 book ai didi

mysql - 分组依据,在 MySQL 中使用

转载 作者:行者123 更新时间:2023-11-30 23:34:31 25 4
gpt4 key购买 nike

我的 mysql 查询有问题。我需要获得具有最大值评级的完整行。 例如我有表 recipes

评级 |编号 |类

4.1  | 1 | soup
4.2 | 3 | soup
4.9 | 4 | soup
4.8 | 5 | salads
4.3 | 6 | dishes9

SELECT MAX(rating) rat, id, class FROM recipes GROUP BY class

我得到结果:

大鼠 |编号 |类

4.9 | 1 | soup
4.8 | 5 | salads
4.3 | 6 | dishes

所以在第一行(其中 class='soup')我得到了 trully max rating - 4.9,但在这一行中 id 的值为 1,而不是 4。

当我使用拥有

SELECT MAX(rating) rat, id, class FROM recipes GROUP BY class HAVING rating=rat

结果变成

大鼠 |编号 |类

4.8 | 5 | salads
4.3 | 6 | dishes

谁能帮我解决这个问题?

最佳答案

试试这个查询-

SELECT r1.*  FROM recipes r1
JOIN (SELECT MAX(rating) rat, class FROM recipes GROUP BY class) r2
ON r1.class = r2.class AND r1.rating = r2.rat;

关于mysql - 分组依据,在 MySQL 中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8744167/

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