BaşlayınÜcretsiz Başlayın

Common Table Expressions

Danışmanlık verdiğin Pissa, bir promosyon kampanyası planlıyor ve uzmanlığına ihtiyaç duyuyor.

Kampanya, toplam siparişlere göre en popüler pizzalarını öne çıkarmayı hedefliyor.

Ayrıca, en ucuz pizzalarını içeren uygun fiyatlı bir menü çıkarmayı da düşünüyorlar.

Danışman veri mühendisi olarak görevin, bu iki pizzayı da belirlemek.

Bu egzersiz

Snowflake SQL'e Giriş

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • most_ordered adlı bir CTE oluştur ve sonuçları 1 ile sınırla.
  • cheapest_pizza adlı başka bir CTE oluştur ve en düşük fiyatı bulmak için bir alt sorgu kullanarak en ucuz pizzayı filtrele.
  • Sorguyu tamamlayıp most_ordered CTE'sinden pizza_id ve total_qty sütunlarını, metric takma adıyla seç.
  • cheapest_pizza CTE'sinden pizza_id ve price sütunlarını, metric takma adıyla ekle. Not: Sütunların sırasını koru.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

-- 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 ___
Kodu Düzenle ve Çalıştır