посчитайте отдельную проблему в Hive

#hive #hiveql

#hive #hiveql

Вопрос:

Я пытаюсь вычислить количество (уникальных) отображений каждого элемента в столбце таблицы Hive относительно других столбцов.

Я попробовал этот запрос, но у меня это выражение ошибки отсутствует в пользовательской группе ПО ключу

 SELECT custom, dist_pt, dt, art, COUNT(DISTINCT art) OVER (PARTITION BY custom, dist_pt) as nb_art FROM Tab ;
  

Ответ №1:

Удалите DISTINCT из вашего COUNT() и добавьте «ГРУППИРОВАТЬ ПО элементам» в конце вашего запроса. Вам нужно сегментировать или группировать по элементам, чтобы подсчитать, сколько записей имеют каждое уникальное значение art.

Комментарии:

1. Почему вы предлагаете OP удалить distinct ? Он / Она хочет подсчитывать уникальные события, насколько я могу судить?

2. Я понял, что OP хочет подсчитать, сколько записей имеет каждое отдельное значение art , а не сколько существует разных art значений.

3. Я думаю, вы правы. Подсчет distinct для столбца в группе by каждый раз будет возвращать только 1.

4. Спасибо, Итан Дж. но мне действительно нужно подсчитывать вхождения каждого элемента искусства. Есть другие идеи?