Filtragem antecipada
A Pissa solicitou a sua experiência para otimizar o desempenho das consultas ao banco de dados. Eles suspeitam que as consultas existentes não são suficientemente eficientes e levam muito tempo para serem executadas.
O objetivo é recuperar os pedidos feitos após 1º de novembro de 2015 e apenas de pizzas da categoria "Veggie".
Complete a consulta SQL fornecida implementando técnicas de filtragem antecipada.
Este exercício faz parte do curso
Introdução ao Snowflake SQL
Instruções do exercício
- Complete a CTE
filtered_orders
, filtrando para incluir apenas pedidos feitos após2015-11-01
. - Complete a CTE
filtered_pizza_type
, filtrando para incluir apenas pizzas na categoria'Veggie'
. - Recupere os registros da CTE
filtered_orders
. - Faça a junção da CTE
filtered_pizza_type
com base na colunapizza_type_id
usando a cláusulaON
.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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 = ___.___