Найти наиболее часто используемый хэштег для каждого дня?


Ниже приведен фрагмент данных моей таблицы hive,

2009-01-01 #aaa 2
2009-01-01 #bbb 3
2009-01-02 #ccc 1
2009-01-02 #ddd 1

Описание таблицы является

id         bigint
hashtag    string
dt         date

Таблица в основном содержит информацию о количестве хэштегов на каждый день. Я хочу написать запрос hive, который будет возвращать наиболее часто используемый хэштег в каждый день, а также его количество. Например,

2009-01-01 #bbb 3
2009-01-02 #ccc 1
2009-01-02 #ddd 1
Может ли кто-нибудь помочь мне с этим? Спасибо.
1 2

1 ответ:

Попробуйте это.

SELECT a.dt,
       a.hashtag,
       b.id
FROM mytable a
JOIN
  (SELECT dt,
          MAX(id) as id
   FROM mytable
   GROUP BY dt) b ON a.id = b.id
AND a.dt = b.dt
ORDER BY a.hashtag;