Итак, я сейчас пишу импала-запрос, который по существу группирует данные, основанные на нескольких столбцах, и принимает значение оставшейся части столбца на основе самых последних. Однако, поскольку я хочу сгруппировать данные на основе даты, при сравнении данных запрос всегда возвращает false.
Мой код, как показано ниже. Если я не включил сравнение tstamp, код работает нормально, но не может сгруппировать его по дате.
`select * from mytab as x
where x.tstamp =
(select max(y.tstamp) from mytab as y
where x.id_ = y.id_ and x.id = y.id and
to_date(x.tstamp) = to_date(y.tstamp));
`
и данные как ниже. Приведенные ниже данные являются просто фрагментом реальных данных, которые содержат данные за многие дни и имеют больше столбцов.
tstamp id id_
2018-06-07 06:39:26.470 10002071 5438221
2018-06-07 06:39:26.533 10002071 5438221
2018-06-07 06:39:35.223 10002071 5438221
2018-06-07 06:39:35.343 10002071 5438222
2018-06-07 06:39:39.087 10002071 5438222
2018-06-07 06:39:43.390 10002071 5438222
2018-06-07 06:39:43.417 10002071 6268470
2018-06-07 06:39:44.700 10002071 6268470
2018-06-07 06:39:48.573 10002071 6268470