CommencezCommencez gratuitement

Filtrage précoce

Pissa vous demande maintenant votre expertise pour optimiser la performance de leurs requêtes de base de données. Ils soupçonnent que leurs requêtes actuelles ne sont pas suffisamment efficaces et prennent trop de temps à s'exécuter.

L'objectif est de récupérer les commandes effectuées après le 1er novembre 2015, et seulement les pizzas de la catégorie « Veggie ».

Complétez la requête SQL fournie en appliquant des techniques de filtrage précoce.

Cette activité fait partie du cours

Introduction à Snowflake SQL

Voir le cours

Instructions de l’exercice

  • Complétez le CTE filtered_orders en filtrant pour ne garder que les commandes postérieures à 2015-11-01.
  • Complétez le CTE filtered_pizza_type en filtrant pour ne garder que les pizzas de la catégorie 'Veggie'.
  • Récupérez les enregistrements du CTE filtered_orders.
  • Joignez le CTE filtered_pizza_type en fonction de la colonne pizza_type_id à l'aide de la clause ON.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

WITH filtered_orders AS (
  SELECT order_id, order_date 
  FROM orders 
  -- Filter records where order_date is greater than November 1, 2015
  ___
)

, filtered_pizza_type AS (
  SELECT name, pizza_type_id 
  FROM pizza_type 
  -- Filter the pizzas which are in the Veggie category
  ___
)

SELECT fo.order_id, fo.order_date, fpt.name, od.quantity
-- Get the details from filtered_orders CTE
FROM ___ AS fo
JOIN order_details AS od ON fo.order_id = od.order_id
JOIN pizzas AS p ON od.pizza_id = p.pizza_id
-- JOIN the filtered_pizza_type CTE on pizza_type_id
___ ___ AS fpt ON p.pizza_type_id = ___.___
Modifier et exécuter le code