Это мой первый пост на SO.Так что вполне возможно, что я нарушаю множество правил публикации.Если это так, пожалуйста, дайте мне знать, и я постараюсь не повторять их.
Я пытался получить скользящее среднее и абсолютное число в одном запросе в Hive, и вот что у меня есть.Это прекрасно работало в Redshift, но в Hive вызвала ошибку.Похоже, подзапросы в операторах выбора не поддерживаются.Интересно, смогу ли я получить некоторые подсказки о том, как я могу изменить этот запрос, чтобы получить те же результаты из Hive.
select
a.ds,
a.traffic_source,
a.device_type,
count(distinct a.unique_id) as daily_deduped_visits_human,
(select
count(distinct b.unique_id)
from
scratch.unique_human_id b
where
b.ds >= a.ds - 28
and b.ds <= a.ds
and a.traffic_source = b.traffic_source
and a.device_type = b.device_type
)/28 as rolling_28_day_average_visits_human
from
scratch.unique_human_id a
group by 1,2,3