Кратко:

  • SELECT season_id, episodes_id, title, imdb_rating FROM ratings VIEW rating_index WHERE imdb_rating >= 85 ORDER BY imdb_rating DESC;
  • CREATE TABLE ratings (season_id Uint64, episodes_id Uint64, title Utf8, air_date Date, imdb_rating Uint64, PRIMARY KEY (season_id, episodes_id), INDEX rating_index GLOBAL ON (imdb_rating));
  • REPLACE INTO ratings (season_id, episodes_id, title, air_date, imdb_rating) VALUES (1, 1, "Yesterday's Jam", Date("2006-02-03"), 76), (1, 2, "Calamity Jen", Date("2006-02-03"), 82), (1, 3, "Fifty-Fifty", Date("2006-02-10"), 79);
  • ALTER TABLE ratings DROP COLUMN air_date;
  • SELECT series_id, COUNT(*) AS total_episodes FROM episodes GROUP BY series_id ORDER BY series_id;
  • SELECT sa.title AS season_title, sr.title AS series_title, sa.season_id FROM seasons AS sa INNER JOIN series AS sr ON sa.series_id = sr.series_id WHERE sa.season_id = 1 ORDER BY sr.series_id;
  • ВЫБЕРИТЕ название сериала IT Crowd и название каждого эпизода из таблицы episodes.
 
Ваш запрос должен быть написан так:
CREATE TABLE ratings (
    season_id Uint64, 
    episodes_id Uint64, 
    title Utf8, 
    air_date Date, 
    imdb_rating Uint64, 
        PRIMARY KEY (season_id, episodes_id), 
        INDEX rating_index GLOBAL ON (imdb_rating)
);
 
Ваш запрос должен выглядеть таким образом:
REPLACE INTO ratings (season_id, episodes_id, title, air_date, imdb_rating) VALUES 
    (1, 1, "Yesterday's Jam", Date("2006-02-03"), 76),
    (1, 2, "Calamity Jen", Date("2006-02-03"), 82),
    (1, 3, "Fifty-Fifty", Date("2006-02-10"), 79),
    (1, 4, "The Red Door", Date("2006-02-17"), 80),
    (1, 5, "The Haunting of Bill Crouse", Date("2006-02-24"), 85),
    (1, 6, "Aunt Irma Visits", Date("2006-03-03"), 81),
    (2, 1, "The Work Outing", Date("2006-08-24"), 95),
    (2, 2, "Return of the Golden Child", Date("2007-08-31"), 82),
    (2, 3, "Moss and the German", Date("2007-09-07"), 82),
    (2, 4, "The Dinner Party", Date("2007-09-14"), 87),
    (2, 5, "Smoke and Mirrors", Date("2007-09-21"), 78),
    (2, 6, "Men Without Women", Date("2007-09-28"), 76),
    (3, 1, "From Hell", Date("2008-11-21"), 78),
    (3, 2, "Are We Not Men?", Date("2008-11-28"), 85),
    (3, 3, "Tramps Like Us", Date("2008-12-05"), 82),
    (3, 4, "The Speech", Date("2008-12-12"), 90),
    (3, 5, "Friendface", Date("2008-12-19"), 85),
    (3, 6, "Calendar Geeks", Date("2008-12-26"), 78),
    (4, 1, "Jen The Fredo", Date("2010-06-25"), 80),
    (4, 2, "The Final Countdown", Date("2010-07-02"), 84),
    (4, 3, "Something Happened", Date("2010-07-09"), 75),
    (4, 4, "Italian For Beginners", Date("2010-07-16"), 82),
    (4, 5, "Bad Boys", Date("2010-07-23"), 84),
    (4, 6, "Reynholm vs Reynholm", Date("2010-07-30"), 76);
 
Для этого понадобится выполнить такую команду:
ALTER TABLE ratings DROP COLUMN air_date;

 

 
Используемый для этого запрос:
SELECT 
    season_id, 
    episodes_id, 
    title, 
    imdb_rating
FROM ratings VIEW rating_index 
WHERE 
    imdb_rating >= 85 
ORDER BY 
    imdb_rating DESC
;

 

 
Подсказка:
 
Ответ:
SELECT 
    series_id, 
    COUNT(*) AS total_episodes 
FROM episodes 
GROUP BY 
    series_id 
ORDER BY 
    series_id 
;

 

 
Подсказка:
 
Ответ:
SELECT 
    season_id, 
    AVG (imdb_rating) AS avg_rating
FROM ratings 
GROUP BY season_id
ORDER BY avg_rating DESC;

 

 
Это запрос может выглядеть следующим образом:
SELECT 
    sr.title AS series_title, 
    ep.title AS episode_title, 
    ep.season_id,     
    ep.episode_id 
FROM 
    series AS sr 
INNER JOIN 
    episodes AS ep 
ON sr.series_id = ep.series_id 
WHERE sr.series_id = 1 
ORDER BY 
    ep.season_id,     
    ep.episode_id 
;