CommencerCommencer gratuitement

Filtrer avec QUALIFY

Si vous avez besoin d’utiliser le résultat d’une fonction de fenêtre comme filtre WHERE, vous devez utiliser QUALIFY. Dans cette requête, vous allez trouver toutes les occurrences où la moyenne glissante de la ligne courante et des 9 lignes précédentes est supérieure à 500.

Cet exercice fait partie du cours

Introduction à BigQuery

Afficher le cours

Instructions

  • Complétez la requête en remplissant la fonction de fenêtre et la clause QUALIFY pour filtrer la requête.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

-- 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;
Modifier et exécuter le code