Abaixo está uma instrução que descreve uma tarefa de geração de SQL, combinada com uma entrada que fornece mais contexto sobre os esquemas de tabela disponíveis. Escreva o código SQL que responda adequadamente à solicitação
 ###Instrução: Identificar os nomes e pontuações médias dos 5 melhores jogadores da África que jogaram jogos de realidade virtual nos últimos 6 meses, ordenados pela pontuação média mais alta.
 ###Tabelas: 
CREATE TABLE players (id INT, name VARCHAR(50), age INT, gender VARCHAR(50), country VARCHAR(50)); INSERT INTO players (id, name, age, gender, country) VALUES (1, 'John Mwangi', 25, 'Male', 'Kenya'); INSERT INTO players (id, name, age, gender, country) VALUES (2, 'Aisha Suleiman', 30, 'Female', 'Nigeria'); CREATE TABLE vr_scores (id INT, player_id INT, game_name VARCHAR(50), score INT, date_played DATE); INSERT INTO vr_scores (id, player_id, game_name, score, date_played) VALUES (1, 1, 'VR Game A', 100, '2022-05-01'); INSERT INTO vr_scores (id, player_id, game_name, score, date_played) VALUES (2, 2, 'VR Game A', 120, '2022-05-10');
SELECT players.name, AVG(vr_scores.score) AS avg_score FROM players INNER JOIN vr_scores ON players.id = vr_scores.player_id WHERE vr_scores.date_played >= DATEADD(month, -6, GETDATE()) AND players.country IN ('Africa', 'South Africa') GROUP BY players.name ORDER BY AVG(vr_scores.score) DESC LIMIT 5;