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 valor total doado por cada doador para projetos localizados na África, em ordem decrescente?
 ###Tabelas: 
CREATE TABLE donors (donor_id INT, name TEXT, total_donation FLOAT);CREATE TABLE projects (project_id INT, name TEXT, location TEXT);CREATE TABLE donations (donation_id INT, donor_id INT, project_id INT, amount FLOAT);INSERT INTO donors VALUES (1, 'John Doe', 5000.00), (2, 'Jane Smith', 7000.00);INSERT INTO projects VALUES (1, 'Water Wells', 'Africa'), (2, 'Education Center', 'Asia');INSERT INTO donations VALUES (1, 1, 1, 1000.00), (2, 1, 2, 2000.00), (3, 2, 1, 3000.00), (4, 2, 2, 4000.00);
SELECT d.name, SUM(donations.amount) as total_donated_africa FROM donors d INNER JOIN donations ON d.donor_id = donations.donor_id INNER JOIN projects ON donations.project_id = projects.project_id WHERE projects.location = 'Africa' GROUP BY d.name ORDER BY total_donated_africa DESC;