ПочатиПочніть безкоштовно

Раннє фільтрування

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 = ___.___
Редагувати та запускати код