我正在挑战这个问题.我有一张桌子,它叫:结果.共有3列,如下所示(id列为int,City为varchar,Score为int):
id name score
1 x 5
2 x 9
3 x 10
5 x 2
85 y 20
2 y 1
9 z 98
2 z 6
7 z 93
10 z 9
我必须 for each 名称找到3个最低值,因此输出应该如下所示:
id name score
1 x 5
2 x 9
5 x 2
85 y 20
2 y 1
2 z 6
7 z 93
10 z 9
因此,我try 这样编写SQL查询:
SELECT id, name, score
FROM results
GROUP BY name
ORDER BY score DESC
LIMIT 3
但它不起作用(输出错误).你知道我怎么才能解决这个问题吗?