Comece agoraComece grátis

Encontrando os artistas mais populares

Ainda não conseguimos relacionar as vendas de faixas a um artista. Vamos mudar isso! Você vai praticar o uso de common table expressions para combinar dados de duas tabelas e encontrar o artista com mais minutos ouvidos. Antes de começar, dê uma olhada nas tabelas album e artist na janela de saída.

Este exercicio faz parte do curso

Manipulação de dados no Snowflake

Ver curso

Instruções do exercicio

  • Defina uma CTE artist_info que faça JOIN entre as tabelas artist e album pelo campo artist_id.
  • Crie uma segunda CTE chamada track_sales que recupere album_id, name e o número de segundos por faixa da tabela track.
  • Calcule o total de minutos ouvidos para cada artista.
  • Agrupe os resultados por artist_name a partir da CTE apropriada.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

-- 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 e Executar Código