Skip to content
New Workbook
Sign up
Project: When Was the Golden Era of Video Games?

Video games are big business: the global gaming market is projected to be worth more than $300 billion by 2027 according to Mordor Intelligence. With so much money at stake, the major game publishers are hugely incentivized to create the next big hit. But are games getting better, or has the golden age of video games already passed?

In this project, you'll analyze video game critic and user scores as well as sales data for the top 400 video games released since 1977. You'll search for a golden age of video games by identifying release years that users and critics liked best, and you'll explore the business side of gaming by looking at game sales data.

Your search will involve joining datasets and comparing results with set theory. You'll also filter, group, and order data. Make sure you brush up on these skills before trying this project! The database contains two tables. Each table has been limited to 400 rows for this project, but you can find the complete dataset with over 13,000 games on Kaggle.

game_sales table

ColumnDefinitionData Type
nameName of the video gamevarchar
platformGaming platformvarchar
publisherGame publishervarchar
developerGame developervarchar
games_soldNumber of copies sold (millions)float
yearRelease yearint

reviews table

ColumnDefinitionData Type
nameName of the video gamevarchar
critic_scoreCritic score according to Metacriticfloat
user_scoreUser score according to Metacriticfloat

users_avg_year_rating table

ColumnDefinitionData Type
yearRelease year of the games reviewedint
num_gamesNumber of games released that yearint
avg_user_scoreAverage score of all the games ratings for the yearfloat

critics_avg_year_rating table

ColumnDefinitionData Type
yearRelease year of the games reviewedint
num_gamesNumber of games released that yearint
avg_critic_scoreAverage score of all the games ratings for the yearfloat
Spinner
DataFrameavailable as
best_selling_games
variable
-- best_selling_games
-- Select all information for the top ten best-selling games
SELECT *
FROM game_sales
-- Order the results from best-selling game down to tenth best-selling
ORDER BY games_sold DESC
LIMIT 10;
Spinner
DataFrameavailable as
critics_top_ten_years
variable
-- critics_top_ten_years
-- Select release year and average critic score for each year, rounded and aliased
SELECT g.year, COUNT(g.name) AS num_games, ROUND(AVG(r.critic_score),2) AS avg_critic_score
FROM game_sales AS g
-- Join the game_sales and reviews tables
INNER JOIN reviews AS r
ON g.name = r.name
-- Group by release year
GROUP BY year
HAVING COUNT(g.name) >= 4
ORDER BY avg_critic_score DESC
LIMIT 10;
Spinner
DataFrameavailable as
golden_years
variable
-- golden_years
-- Select year, num_games, avg_critic_score, avg_user_score and the difference between the user and critic scores as avg_score.
SELECT u.year, u.num_games, c.avg_critic_score, u.avg_user_score, ABS(c.avg_critic_score - u.avg_user_score) AS diff 
FROM critics_avg_year_rating AS c
-- Join critics_top_ten_years and users_top_years on the year column
INNER JOIN users_avg_year_rating AS u
ON c.year = u.year 
-- Where the average user or critic rating for the year was over 9.
WHERE c.avg_critic_score > 9 OR u.avg_user_score > 9
-- Order data by diff in ascending order
ORDER BY diff ASC;