Я хочу выбрать всю строку, которая была отфильтрована по 2 столбцам с максимальной датой -
Итак, если у меня есть стол (Поставка):
D_id |O_id | O_date | Start_date| amount
400 |1 | 2018-2-7 | 2018-4-7 | 500
401 |1 | 2019-8-2 | 2019-10-1 | 1500
402 |1 | 2019-8-2 | 2019-12-7 | 200
403 |2 | 2016-4-10 | 2016-5-7 | 100
404 |2 | 2018-12-1 | 2018-12-17| 50
405 |2 | 2018-12-1 | 2019-1-1 | 2500
Выходные данные, следовательно, должны группироваться по d_id и отображать всю строку, которая имеет максимальное значение O_date и максимальное значение start_date
D_id |O_id | O_date | Start_date | amount |
402 |1 | 2019-8-2 | 2019-12-7 | 200
405 |2 | 2018-12-1 | 2019-1-1 | 2500
Проблема, с которой я столкнулся, заключается в использовании max и group by condition, SQL не соответствует полям для каждой строки.
select max(O_DATE),
MAX(START_DATE),
D_ID,
AMOUNT,
O_ID
FROM SUPPLY
group by
O_ID;