Ранняя фильтрация
Компания Pissa обратилась к вам за помощью в оптимизации запросов к базе данных. По их наблюдениям, существующие запросы недостаточно эффективны и выполняются слишком долго.
Цель — получить заказы, сделанные после 1 ноября 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 = ___.___