识别高表现成员
还有什么比排行榜更有趣?运营团队想使用 CORE_GYM 架构中的数据,基于消耗的卡路里创建会员排行榜。为此,他们需要您生成一个将 members 和 visits 两张表合并的结果集。
本练习是课程的一部分
Snowflake 中的数据类型与函数
练习说明
- 使用 CTE,创建一个名为
flattened_members的临时结果集,从members表中获取user_id、名和姓。 - 定义第二个名为
high_performers的临时结果集,返回visits表中所有calories_burned > 500的记录。 - 将扁平化后的成员输出与
high_performers按user_id字段进行连接。
交互式实操练习
通过完成这段示例代码来试试这个练习。
-- Retrieves the user_id, first name, and last name from the members table
___ ___ ___ (
SELECT
user_id,
personal_info:name.___ AS first_name,
personal_info:name.___ AS last_name,
FROM CORE_GYM.members),
-- high_performers should return all visits where > 500 calories were burned
___ ___ (
SELECT
user_id,
TO_DATE(checkin_time) AS workout_date,
workout_type,
calories_burned
FROM CORE_GYM.visits
WHERE ___)
SELECT
CONCAT(flattened_members.first_name, ' ', flattened_members.last_name) AS full_name,
high_performers.workout_date,
high_performers.workout_type,
high_performers.calories_burned
FROM high_performers
-- JOIN flattened_members to high_performers on the user_id field
JOIN ___ ON ___.___ = high_performers.user_id;