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: Qual é o número de programas educacionais fornecidos por ONGs na região da Ásia-Pacífico, agrupados por tipo de programa, nos últimos 5 anos?
 ###Tabelas: 
CREATE TABLE ngo (ngo_id INT, name VARCHAR(255), region VARCHAR(255)); INSERT INTO ngo VALUES (1, 'NGO1', 'Asia-Pacific'); INSERT INTO ngo VALUES (2, 'NGO2', 'Africa'); CREATE TABLE educational_program (program_id INT, ngo_id INT, program_type VARCHAR(255), start_date DATE); INSERT INTO educational_program VALUES (1, 1, 'Online', '2018-01-01'); INSERT INTO educational_program VALUES (2, 1, 'In-person', '2019-06-01');
SELECT program_type, COUNT(*) as num_programs FROM educational_program JOIN ngo ON educational_program.ngo_id = ngo.ngo_id WHERE ngo.region = 'Asia-Pacific' AND start_date >= DATE_SUB(CURRENT_DATE, INTERVAL 5 YEAR) GROUP BY program_type;