2015-12-20 2 views
-4

Как использовать функцию Max на выходе функции Count. У меня есть таблица candidates с колонкой как candidatenames нижеКак использовать функцию Max на выходе функции подсчета в улье

AAA 
BBB 
CCC 
BBB 
AAA 
FFF 
AAA 
AAA 

Я хочу, чтобы результат, как показано ниже:

AAA 4 

Поскольку AAA появился максимальное время 4. Как получить этот выход в улье?

+0

Возможный дубликат [запроса улей, чтобы получить максимальную графский] (http://stackoverflow.com/questions/24756744/ hive-query-to-get-max-of-count) – YoungHobbit

+0

Я следил за этой ссылкой, но я думаю, что должен быть более простой способ сделать это. –

ответ

0

Вы можете сделать это с помощью функций окна Hive; вы можете прочитать о них here.

Запрос:

select candidates, c 
from (
    select candidates, c 
     , max(c) over() max_c 
    from (
     select candidates, count(*) c 
     from db.table 
     group by candidates) x 
    ) y 
where max_c = c 

Выход:

candidates c 
AAA   4 
Смежные вопросы