IniziaInizia gratis

Common Table Expressions

Pissa, l'azienda per cui stai facendo consulenza, sta pianificando una campagna promozionale e ha bisogno della tua esperienza.

L'obiettivo è mettere in evidenza la loro pizza più popolare in base agli ordini totali.

Stanno anche valutando di introdurre un menu convenienza con la loro pizza meno costosa.

Il tuo compito, come data engineer consulente, è identificare entrambe le pizze.

Questo esercizio fa parte del corso

Introduzione a Snowflake SQL

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una CTE chiamata most_ordered e limita i risultati a 1.
  • Crea un'altra CTE chiamata cheapest_pizza e filtra per la pizza più economica usando una sottoquery per trovare il prezzo minimo.
  • Completa la query selezionando pizza_id e total_qty con alias metric dalla CTE most_ordered.
  • Includi pizza_id e price con alias metric dalla CTE cheapest_pizza. Nota: mantieni l'ordine delle colonne.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- 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 ___
Modifica ed esegui il codice