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 total de voluntários e o total de horas de voluntariado para cada programa nas tabelas 'programs' e 'volunteer_hours'?
 ###Tabelas: 
CREATE TABLE programs (program_id INT, program_name TEXT); CREATE TABLE volunteers (volunteer_id INT, volunteer_name TEXT, program_id INT); CREATE TABLE volunteer_hours (hour_id INT, volunteer_id INT, hours FLOAT); INSERT INTO programs (program_id, program_name) VALUES (1, 'Arts'), (2, 'Sports'), (3, 'Education'); INSERT INTO volunteers (volunteer_id, volunteer_name, program_id) VALUES (1, 'Olivia Jones', 1), (2, 'David Kim', 2), (3, 'Sophia Lee', 3); INSERT INTO volunteer_hours (hour_id, volunteer_id, hours) VALUES (1, 1, 10), (2, 2, 15), (3, 3, 20);
SELECT p.program_name, COUNT(v.volunteer_id) as num_volunteers, SUM(vh.hours) as total_hours FROM programs p JOIN volunteers v ON p.program_id = v.program_id JOIN volunteer_hours vh ON v.volunteer_id = vh.volunteer_id GROUP BY p.program_name;