ÎncepețiÎncepe gratuit

Găsirea celor mai populari artiști

Până acum nu am reușit să legăm vânzările de piese de un artist. Hai să schimbăm asta! Vei folosi expresii tabel comune pentru a combina date din două tabele și a găsi artistul cu cele mai multe minute ascultate. Înainte de a începe, aruncă o privire la tabelele album și artist din fereastra de rezultate.

Acest exercițiu face parte din cursul

Manipularea datelor în Snowflake

Vezi cursul

Instrucțiuni pentru exercițiu

  • Definește un CTE numit artist_info care realizează JOIN între tabelele artist și album pe câmpul artist_id.
  • Creează un al doilea CTE numit track_sales care preia album_id, name și numărul de secunde per piesă din tabelul track.
  • Calculează totalul minutelor ascultate pentru fiecare artist.
  • Grupează rezultatele după artist_name din CTE-ul corespunzător.

Exercițiu interactiv practic

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

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