Запрос на поиск максимальных значений в группе Access
Есть условная таблица:
| участок | сектор | кол-во квадратов | кол-во кругов |
|---|---|---|---|
| 1 | 1-1 | 1 | 1 |
| 1 | 1-2 | 2 | 1 |
| 2 | 2-1 | 1 | 2 |
| 2 | 2-2 | 2 | 1 |
| 2 | 2-3 | 1 | 3 |
Мне необходимо написать запрос на выборку максимальных значений(круги, квадраты) по группе(участок), что бы в итоге вывод был следующим:
| участок | сектор | MAX(кол-во квадратов) | MAX(кол-во кругов) |
|---|---|---|---|
| 1 | 1-2 | 2 | 1 |
| 2 | 2-2 | 2 | 1 |
| 2 | 2-3 | 1 | 3 |
но я упираюсь в проблему того что значение "сектора" всегда уникально, и я получаю вывод максимальных значений для сектора но не для группы.
Прошу Вас помочь мне с этим или направить в нужное русло
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
Будет что-то типа
SELECT DISTINCT t1.*
FROM table t1,
( SELECT t2.location, MAX(t2.squares) squares
FROM table t2
GROUP BY t2.location ) t3 ON t1.location = t3.location,
( SELECT t4.location, MAX(t4.circles) circles
FROM table t4
GROUP BY t4.location ) t5 ON t1.location = t5.location
WHERE t1.squares = t3.squares
OR t1.circles = t5.circles
В Access подзапросы разумно сделать статическими запросами и использовать в финальном запросе как источники данных.