ÎncepețiÎncepe gratuit

Expresii de tip Common Table Expression

Pissa, compania pentru care oferi consultanță, planifică o campanie promoțională și are nevoie de expertiza ta.

Campania urmărește să evidențieze cea mai populară pizza a lor în funcție de numărul total de comenzi.

De asemenea, compania ia în calcul introducerea unui meniu economic cu cea mai ieftină pizza din ofertă.

Sarcina ta, în calitate de inginer de date consultant, este să le identifici pe ambele.

Acest exercițiu face parte din cursul

Introducere în Snowflake SQL

Vezi cursul

Instrucțiuni pentru exercițiu

  • Creează un CTE numit most_ordered și limitează rezultatele la 1.
  • Creează un al doilea CTE, numit cheapest_pizza, și filtrează pentru pizza cea mai ieftină folosind un subinterogare care să găsească prețul minim.
  • Completează interogarea pentru a selecta pizza_id și total_qty cu aliasul metric din CTE-ul most_ordered.
  • Include pizza_id și price cu aliasul metric din CTE-ul cheapest_pizza. Atenție, păstrează ordinea coloanelor.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

-- 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 ___
Editează și rulează codul