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: Quantas horas os voluntários do Japão contribuíram para programas educacionais nos últimos 6 meses?
 ###Tabelas: 
CREATE TABLE volunteer_hours (id INT, volunteer_id INT, program_id INT, hours DECIMAL(10,2), contribution_date DATE); CREATE TABLE volunteers (id INT, country VARCHAR(50)); CREATE TABLE programs (id INT, focus_area VARCHAR(50)); INSERT INTO volunteer_hours (id, volunteer_id, program_id, hours, contribution_date) VALUES (1, 1, 1, 2.0, '2021-03-15'); INSERT INTO volunteers (id, country) VALUES (1, 'Japan'); INSERT INTO programs (id, focus_area) VALUES (1, 'Tutor Kids');
SELECT SUM(hours) FROM volunteer_hours JOIN volunteers ON volunteer_hours.volunteer_id = volunteers.id JOIN programs ON volunteer_hours.program_id = programs.id WHERE volunteers.country = 'Japan' AND programs.focus_area = 'educational programs' AND contribution_date >= DATE_SUB(CURDATE(), INTERVAL 6 MONTH);