ComenzarEmpieza gratis

Encontrar a los artistas más populares

Algo que aún no hemos podido hacer es vincular las ventas de pistas a un artista. ¡Vamos a cambiar eso! Vas a trabajar con expresiones de tabla comunes para combinar datos de dos tablas y encontrar al artista con más minutos escuchados. Antes de empezar, echa un vistazo a las tablas album y artist en la ventana de resultados.

Este ejercicio forma parte del curso

Manipulación de datos en Snowflake

Ver curso

Instrucciones del ejercicio

  • Define una CTE artist_info que haga JOIN entre las tablas artist y album usando el campo artist_id.
  • Crea una segunda CTE llamada track_sales que recupere album_id, name y el número de segundos por pista de la tabla track.
  • Calcula el total de minutos escuchados por cada artista.
  • Agrupa los resultados por artist_name a partir de la CTE correspondiente.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

-- 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;
Editar y ejecutar código