Identyfikowanie najlepszych wyników
Co może być lepszego od tablicy wyników? Zespół operacyjny chce wykorzystać dane ze schematu CORE_GYM do stworzenia rankingu członków na podstawie spalonych kalorii. Twoim zadaniem jest wygenerowanie zbioru wynikowego, który łączy tabele members i visits.
To ćwiczenie jest częścią kursu
Typy danych i funkcje w Snowflake
Instrukcje do ćwiczenia
- Za pomocą CTE utwórz tymczasowy zbiór wynikowy o nazwie
flattened_members, który pobierauser_id, imię i nazwisko z tabelimembers. - Zdefiniuj drugi tymczasowy zbiór wynikowy o nazwie
high_performers, który zwraca wszystkie rekordy z tabelivisits, w którychcalories_burned > 500. - Połącz dane wyjściowe z
flattened_membersz tabeląhigh_performerspo poluuser_id.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
-- 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;