公用表表达式
您所咨询的公司 Pissa 正在策划一场促销活动,需要您的专业支持。
本次活动将基于总订单量,重点推广他们最受欢迎的披萨。
他们还在考虑推出包含最低价披萨的超值套餐。
作为咨询数据工程师,您的任务是找出这两款披萨。
本练习是课程的一部分
Snowflake SQL 入门
练习说明
- 创建名为
most_ordered的 CTE,并将结果限制为1。 - 创建另一个名为
cheapest_pizza的 CTE,并使用子查询查找最低价格以筛选出最便宜的披萨。 - 完成查询,从
most_orderedCTE 中选择pizza_id和将total_qty起别名为metric。 - 同时从
cheapest_pizzaCTE 中选择pizza_id和将price起别名为metric。注意,保持列的顺序。
交互式实操练习
通过完成这段示例代码来试试这个练习。
-- 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 ___