IniziaInizia gratis

Trovare gli artisti più popolari

Finora non siamo riusciti a collegare le vendite dei brani a un artista. Cambiamo le cose! Stai per usare le common table expressions per prendere dati da due tabelle e trovare l’artista con più minuti ascoltati. Prima di iniziare, dai un’occhiata alle tabelle album e artist nella finestra dei risultati.

Questo esercizio fa parte del corso

Manipolazione dei dati in Snowflake

Visualizza il corso

Istruzioni dell'esercizio

  • Definisci una CTE artist_info che esegua il JOIN delle tabelle artist e album sul campo artist_id.
  • Crea una seconda CTE chiamata track_sales che recuperi album_id, name e il numero di secondi per brano dalla tabella track.
  • Calcola il totale dei minuti ascoltati per ciascun artista.
  • Raggruppa i risultati su artist_name dalla CTE appropriata.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

-- Create an artist_info CTE, JOIN the artist and album tables
___ ___ ___ (
    SELECT
        album.album_id,
        artist.name AS artist_name
    FROM store.album
    JOIN store.artist ON album.artist_id = artist.artist_id

-- Define a track_sales CTE to assign an album_id, name,
-- and number of seconds for each track
), ___ ___ (
    SELECT
        track.___,
        track.___,
        track.milliseconds / 1000 AS num_seconds
    FROM store.invoiceline
    JOIN store.track ON invoiceline.track_id = track.track_id
)

SELECT
    ai.artist_name,
    -- Calculate total minutes listed
    SUM(___) / 60 AS minutes_listened
FROM track_sales AS ts
JOIN artist_info AS ai ON ts.album_id = ai.album_id
-- Group the results by the non-aggregated column
GROUP BY ___.___
ORDER BY minutes_listened DESC;
Modifica ed esegui il codice