Раннє фільтрування
Pissa звернулася до вас по допомогу з оптимізацією продуктивності їхніх запитів до бази даних. Вони підозрюють, що наявні запити недостатньо ефективні й виконуються надто довго.
Мета — отримати замовлення, зроблені після 01 листопада 2015 року, і лише піци з категорії 'Veggie'.
Завершіть наведений SQL-запит, застосувавши прийоми раннього фільтрування.
Ця вправа є частиною курсу
Вступ до Snowflake SQL
Інструкції до вправи
- Завершіть CTE
filtered_orders, залишивши лише замовлення після2015-11-01. - Завершіть CTE
filtered_pizza_type, залишивши лише піци з категорії'Veggie'. - Отримайте записи з CTE
filtered_orders. - Виконайте об'єднання з CTE
filtered_pizza_typeза стовпцемpizza_type_id, використавши операторON.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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 = ___.___