#hive #hiveql
#улей #hiveql
Вопрос:
Мне нужно сделать разделение по порядку столбцов aa bb cc по дате и нужны результаты, например, если разница составляет более 60 дней в последовательных строках. Я попробовал с помощью datediff(date,lag()), но не получил ожидаемых результатов.
Комментарии:
1. Не могли бы вы показать запрос, который вы пробовали?
2. дата должна быть в сортируемом формате для заказа по: гггг-ММ-дд
Ответ №1:
Предполагая, что date — это столбец типа datetime, вы можете использовать приведенный ниже код —
CASE when datediff(date,lag(Date, 1, 0) over (order by Date) ) >60 then 1 else 0 END diff_gt_60