การค้นหาสมาชิกที่มีผลงานโดดเด่น
ทีมปฏิบัติการต้องการใช้ข้อมูลใน schema CORE_GYM เพื่อสร้างลีดเดอร์บอร์ดของสมาชิกตามแคลอรีที่เผาผลาญ และต้องการให้คุณสร้าง result set ที่รวมข้อมูลจากตาราง members และ visits เข้าด้วยกัน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
ชนิดข้อมูลและฟังก์ชันใน Snowflake
คำแนะนำการฝึกหัด
- สร้าง temporary result set ชื่อ
flattened_membersโดยใช้ CTE เพื่อดึงuser_id, ชื่อ และนามสกุลจากตารางmembers - กำหนด temporary result set ที่สองชื่อ
high_performersให้ดึงทุกระเบียนในตารางvisitsที่มีcalories_burned > 500 - JOIN ผลลัพธ์จาก
flattened_membersกับ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;