开始使用免费开始使用

找出最高效的作曲者

来个有意思的!您正和同事聊天,决定找出哪位艺人把歌曲的「每秒价格」定得最高(按平均值计算)。为此,您将使用 tracks 表和一个公共表表达式(Common Table Expression,CTE)。

本练习是课程的一部分

Snowflake 中的数据操作

查看课程

练习说明

  • 创建一个名为 track_metrics 的公共表表达式(CTE),提取 composer、秒数以及 unit_price
  • 定义 track_metrics 时,只保留 composer 非空的记录。
  • 查询 track_metrics CTE,使用公式 unit_price / num_seconds 计算每位 composer 的「每秒价格」的平均值

交互式实操练习

通过完成这段示例代码来试试这个练习。

-- Create a CTE called track_metrics, convert milliseconds to seconds
___ ___ ___ (
    SELECT 
        composer,
        milliseconds / 1000 AS num_seconds,
        unit_price
    FROM store.track
 	-- Retrieve records where composer is not NULL
    ___
)

SELECT
    composer,
    -- Find the average price-per-second
    ___ AS cost_per_second
___
GROUP BY composer
ORDER BY cost_per_second DESC;
编辑并运行代码