Подводя итог, что я пытаюсь сделать:
У меня есть несколько регионов, в которых много товаров.Я рассчитал скидку для каждого продукта, среднюю скидку для продуктов (разделенных по регионам), а также их стандартное отклонение (также разделенных по регионам).
Теперь мне нужно рассчитать новую среднюю скидку(снова разделено по регионам), но с учетом только продуктов, которые скидка
select product,
discount,
region,
--this is the line i want to add
avg (case when discont < avg_discount + stddev_discount then discount) over(partition by region) end as new_discount*
from (
select product,
discount,
region,
avg(discount) over (partition by region) as avg_discount,
stddev(discount) over (partition by region) as stddev_discount
from base
)
Что я хочу: