En popüler sanatçıları bulma
Şimdiye kadar yapamadığımız bir şey, parça satışlarını bir sanatçıyla ilişkilendirmekti. Bunu değiştirelim! İki tablodan veri alıp en çok dinlenen dakikaya sahip sanatçıyı bulmak için common table expression’ları kullanarak uygulamalı çalışacaksın. Başlamadan önce, çıktı penceresindeki album ve artist tablolarına bir göz atmayı unutma.
Bu egzersiz
Snowflake'te Veri İşleme
kursunun bir parçasıdırEgzersiz talimatları
artist_infoadında bir CTE tanımla veartistilealbumtablolarınıartist_idalanı üzerindenJOINet.track_salesadlı ikinci bir CTE oluştur vetracktablosundanalbum_id,nameve parça başına saniye sayısını al.- Her sanatçı için toplam dinlenen dakikayı hesapla.
- Sonuçları uygun CTE’den
artist_namealanına göre grupla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
-- 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;