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: Calcular as doações totais para cada programa nos últimos 6 meses, ordenadas pelo valor total da doação em ordem decrescente.
 ###Tabelas: 
CREATE TABLE donations (id INT, program_id INT, amount DECIMAL(10, 2), donation_date DATE); INSERT INTO donations (id, program_id, amount, donation_date) VALUES (1, 1, 250.00, '2021-06-01'), (2, 1, 500.00, '2021-07-15'), (3, 2, 1000.00, '2021-02-20'), (4, 2, 300.00, '2021-08-05'), (5, 3, 750.00, '2021-04-10'); CREATE TABLE programs (id INT, name TEXT); INSERT INTO programs (id, name) VALUES (1, 'Feeding the Hungry'), (2, 'Tutoring Kids'), (3, 'Cleaning the Environment');
SELECT programs.id, programs.name, SUM(donations.amount) AS total_donations FROM donations INNER JOIN programs ON donations.program_id = programs.id WHERE donation_date >= DATEADD(month, -6, CURRENT_DATE) GROUP BY programs.id, programs.name ORDER BY total_donations DESC;