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 é a mudança nas horas de voluntariado do mês anterior para cada programa?
 ###Tabelas: 
CREATE TABLE VolunteerHours (VolunteerHourID INT, VolunteerHourDate DATE, Hours DECIMAL, Program TEXT); INSERT INTO VolunteerHours (VolunteerHourID, VolunteerHourDate, Hours, Program) VALUES (1, '2021-01-01', 5.00, 'Feeding Program'), (2, '2021-01-02', 3.00, 'Education Program'), (3, '2021-02-03', 4.00, 'Feeding Program'), (4, '2021-02-04', 6.00, 'Education Program'), (5, '2021-03-05', 7.00, 'Feeding Program'), (6, '2021-03-05', 2.00, 'Education Program');
SELECT Program, LAG(SUM(Hours), 1) OVER (PARTITION BY Program ORDER BY DATE_TRUNC('month', VolunteerHourDate)) AS PreviousMonthHours, SUM(Hours) AS CurrentMonthHours, SUM(Hours) - LAG(SUM(Hours), 1) OVER (PARTITION BY Program ORDER BY DATE_TRUNC('month', VolunteerHourDate)) AS HoursChange FROM VolunteerHours GROUP BY Program, DATE_TRUNC('month', VolunteerHourDate) ORDER BY VolunteerHourDate;