Разделение номера строки по переменному временному окну в Hive SQL - PullRequest
0 голосов
/ 15 апреля 2020

Это не так просто объяснить, поэтому я сделаю все возможное, но, пожалуйста, спросите, если вам нужно больше разъяснений. Я использую улей SQL, и у меня есть таблица, содержащая время пользователя и события. То, что я рассчитываю рассчитать, как показано в столбце rownum ниже, это инкрементная последовательность, которая разделена пользователем и временем события в течение 4-часового окна, который сбрасывается через 4 часа после первого события event_time, которое содержит значения. Итак, в таблице ниже ... Все записи пользователя А находятся между 00:01:00 - 04:00:00. У пользователя B есть 3 события, между первым окном 00:01:00 - 04:01:00 и 2 событиями во втором окне с 04:08:00 - 08:08:00 Пользователь C имеет 2 события в первом окне 00:01:00 - 04:01:00, 1 событие во втором окне 04:10:00 - 08:10:00 и 2 события в 08:15: 00 - 12:15:00 окно Любая помощь / указатели будут с благодарностью!

| user | event_time | rownum |
|------|------------|--------|
| A    | 00:01:00   | 1      |
| A    | 00:02:00   | 2      |
| A    | 02:30:00   | 3      |
| B    | 00:01:00   | 1      |
| B    | 00:02:00   | 2      |
| B    | 02:30:00   | 3      |
| B    | 04:08:00   | 1      |
| B    | 04:10:00   | 2      |
| C    | 00:01:00   | 1      |
| C    | 00:02:00   | 2      |
| C    | 04:10:00   | 1      |
| C    | 08:15:00   | 1      |
| C    | 08:17:00   | 2      |
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...