IniziaInizia gratis

Album che trainano le vendite

Oggi la tua direttrice è passata alla tua scrivania con un’anticipazione su una promozione festiva sugli album "Greatest Hits" in arrivo. Tuttavia, per assicurarsi che vengano scontati gli album migliori, vuole sapere quali album "Greatest Hits" generano più vendite. Per farlo, metterai alla prova tutte le competenze che hai imparato!

Questo esercizio fa parte del corso

Manipolazione dei dati in Snowflake

Visualizza il corso

Istruzioni dell'esercizio

  • Definisci una CTE chiamata album_map.
  • Crea un'istruzione CASE che restituisca TRUE se greatest è nel titolo di un album e FALSE altrimenti, con alias is_greatest_hits.
  • Aggiorna la CTE trimmed_invoicelines, eseguendo un LEFT JOIN delle tabelle invoice e tracks a invoicelines rispettivamente su invoice_id e track_id.
  • Usa una sottoquery per restituire solo gli album "Greatest Hits".

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- Define an album_map CTE to combine albums and artists
___ (
    SELECT
        album.album_id, album.title AS album_name, artist.name AS artist_name,
  		-- Determine if an album is a "Greatest Hits" album
        ___ 
            ___ album_name ILIKE '%greatest%' ___ TRUE
            ELSE FALSE
        ___ AS ___
    FROM store.album
    JOIN store.artist ON album.artist_id = artist.artist_id
), trimmed_invoicelines (
    SELECT
        invoiceline.invoice_id, track.album_id, invoice.total
    FROM store.invoiceline
    LEFT JOIN store.invoice ON invoiceline.invoice_id = invoice.invoice_id
    LEFT JOIN store.track ON invoiceline.track_id = track.track_id
)

SELECT
    album_map.album_name,
    album_map.artist_name,
    SUM(ti.total) AS total_sales_driven
FROM trimmed_invoicelines AS ti
JOIN album_map ON ti.album_id = album_map.album_id
-- Use a subquery to only "Greatest Hits" records
___ ti.___ ___ (SELECT album_id FROM album_map WHERE is_greatest_hits)
GROUP BY album_map.album_name, album_map.artist_name, is_greatest_hits
ORDER BY total_sales_driven DESC;
Modifica ed esegui il codice