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

Common Table Expressions

Pissa, компанія, для якої ви консультуєте, планує промокампанію і потребує вашої експертизи.

Мета кампанії — виділити їхню найпопулярнішу піцу за загальною кількістю замовлень.

Вони також розглядають запуск комбоменю з їхньою найдешевшою піцою.

Ваше завдання як консультанта-інженера з даних — визначити обидві ці піци.

Ця вправа є частиною курсу

Вступ до Snowflake SQL

Переглянути курс

Інструкції до вправи

  • Створіть CTE з назвою most_ordered і обмежте результати до 1.
  • Створіть інший CTE під назвою cheapest_pizza і відфільтруйте найдешевшу піцу, використавши підзапит для знаходження мінімальної ціни.
  • Доповніть запит, щоб вибрати pizza_id і total_qty, перейменовану як metric, з CTE most_ordered.
  • Додайте pizza_id і price, перейменовану як metric, з CTE cheapest_pizza. Зверніть увагу: збережіть порядок стовпців.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

-- Create a CTE named most_ordered and limit the results 
___ ___ ___ (
    SELECT pizza_id, SUM(quantity) AS total_qty 
    FROM order_details GROUP BY pizza_id ORDER BY total_qty DESC
    ___
)
-- Create CTE cheapest_pizza where price is equal to min price from pizzas table
, ___ ___ (
    SELECT pizza_id, price
    FROM pizzas 
    WHERE price = (SELECT ___(price) FROM pizzas)
    LIMIT 1
)

SELECT pizza_id, 'Most Ordered' AS Description, total_qty AS metric
-- Select from the most_ordered CTE
FROM ___
UNION ALL
SELECT pizza_id, 'Cheapest' AS Description, price AS metric
-- Select from the cheapest_pizza CTE
FROM ___
Редагувати та запускати код