Я пытаюсь извлечь определенные строки из базы данных MSSQL.Для данной комбинации DistCode
и RtrId
я хочу выбрать только первую строку в таблице с самой поздней датой.Таблица имеет 5 столбцов - DistCode (с 7-значным вводом), RtrId (с 4-значным вводом), X (w / String), Class (w / String) и CreatedDate (w / yyyy-mm-dd).Извините, мое форматирование - отстой - я пытаюсь сделать это в первый раз.
Из приведенной ниже таблицы в идеале я бы хотел выбрать только строку № 2, т. Е. Поскольку она имеет самую последнюю дату, а также она будет последовательно первойсреди вариантов CreatedDate.
DistCode RtrId X Class CreatedDate
1001885 5085 GT BR 16-07-17
Данные таблицы выглядят так:
DistCode RtrId X Class CreatedDate
1001885 5085 GT BR 2016-03-05
1001885 5085 GT BR 2016-07-17
1001885 5085 GT OT 2016-07-17
1001885 5085 GT BR 2016-05-05
dr1=select([dr.c.DistCode, dr.c.RtrId, dr.c.X, dr.c.Class, func.max(dr.c.CreatedDate).label('latest_Date')]).group_by(dr.c.DistCode, dr.c.RtrId, dr.c.X , dr.c.Class).distinct()
Используя func.max в ядре SQLAlchemy, я могуОтфильтруйте до строк 2 и 3, но как мне восстановить только строку №2.Пожалуйста, предоставляйте входные данные, используя только SqlAlchemy Core.