НачатьНачать бесплатно

Фильтрация с помощью QUALIFY

Если вам нужно использовать результат оконной функции в качестве фильтра — как в предложении WHERE — применяйте QUALIFY. В этом запросе вы найдёте все случаи, когда скользящее среднее по текущей и предыдущим 9 строкам превышало $500.

Это упражнение является частью курса

Введение в BigQuery

Посмотреть курс

Инструкции к упражнению

  • Завершите запрос, заполнив оконную функцию и предложение QUALIFY для фильтрации результатов.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

-- Complete the query to find all times when the rolling average is over $500

SELECT
  order_id,
  order_purchase_timestamp,
  -- Complete the rolling average for the current and nine previous rows
  AVG(___) 
  OVER(ORDER BY ___ 
       ROWS BETWEEN ___ ___ AND ___ ROW) as rolling_avg
FROM ecommerce.ecomm_order_details od
JOIN ecommerce.ecomm_orders o 
USING (order_id), unnest(o.order_items) as item
-- Add the qualify statement to find all rows with an average over $500
QUALIFY ___ ___
ORDER BY order_purchase_timestamp;
Редактировать и запускать код