我有这样的场景:
一个带有 POSITION 的表和一个与每个位置关联的值,但我总是有 4 个相同位置的值,所以我的表的一个例子是:
position | x| values
1 | x1 | 0
1 | x2 | 1
1 | x3 | 1.4
1 | x4 | 2
2 | x1 | 3
2 | x2 | 10
2 | x3 | 12.4
2 | x4 | 22
我需要一个查询来返回每个唯一位置值的 MAX 值。现在,我正在查询它:
SELECT DISTINCT (position) AS p, (SELECT MAX(values) AS v FROM MYTABLE WHERE position = p) FROM MYTABLE;
我花了 1651 行(39.93 秒),而 1651 行只是对这个数据库的测试(它可能应该超过 1651 行。
我究竟做错了什么 ?有没有更好的方法可以更快地获得它?
任何帮助表示赞赏。干杯。,