Скажем, у меня есть такая таблица:
x1 | y1 | x2 | y2 | area | color
5 | 0 | 5 | 0 | 1 | r
5 | 0 | 6 | 0 | 2 | g
5 | 1 | 5 | 0 | 2 | b
5 | 1 | 5 | 1 | 2 | r
5 | 2 | 5 | 0 | 3 | g
5 | 2 | 5 | 1 | 3 | b
Как я могу построить SQL-запрос так, чтобы полученная таблица имела один из r, g, b (каждый имеет максимальную площадь), но также сохраняя координаты запись? Я пробовал цвета MAX (AREA) и GROUP BY, но это дает мне записи с максимальной площадью для r, g, b, но не вместе с их координатами.
Я использую пример вывода PostgreSQL (для вышеприведенного), должно быть что-то вроде:
5 | 1 | 5 | 1 | 2 | r
5 | 2 | 5 | 0 | 3 | g
5 | 2 | 5 | 1 | 3 | b
По сути, он должен возвращать 4-ю, 5-ю и 6-ю записи.