BaşlayınÜcretsiz Başlayın

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ır
Kursu Görüntüle

Egzersiz talimatları

  • artist_info adında bir CTE tanımla ve artist ile album tablolarını artist_id alanı üzerinden JOIN et.
  • track_sales adlı ikinci bir CTE oluştur ve track tablosundan album_id, name ve parça başına saniye sayısını al.
  • Her sanatçı için toplam dinlenen dakikayı hesapla.
  • Sonuçları uygun CTE’den artist_name alanı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;
Kodu Düzenle ve Çalıştır