#sql #postgresql #datetime #greatest-n-per-group
#sql #postgresql #дата и время #наибольшее число записей на группу
Вопрос:
На самом деле я пытаюсь получить последнюю запись этих данных с помощью group by r_id
и latest start_date
Мой образец данных :
**r_id** **s_id ** **start_date**
"149165" "28317" "2020-09-07 08:12:46.108"
"149165" "28324" "2020-09-07 08:18:15.934"
"149161" "28313" "2020-09-07 08:11:33.923"
"149161" "28316" "2020-09-07 08:12:19.887"
"149161" "28312" "2020-09-07 08:11:04.448"
"149161" "28305" "2020-09-07 08:09:17.211"
Ожидаемые результаты :
**r_id** **s_id ** **start_date**
"149165" "28324" "2020-09-07 08:18:15.934"
"149161" "28316" "2020-09-07 08:12:19.887"
Кто-нибудь, пожалуйста.
Ответ №1:
Вы можете использовать distinct on
:
select distinct on (r_id) t.*
from mytable t
order by r_id, start_date desc
Комментарии:
1. Вы не знаете, что вы сделали 🙂 . Спасибо, приятель.