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 porcentagem de doações totais feitas por cada gênero nos últimos 3 anos?
 ###Tabelas: 
CREATE TABLE donors (id INT, name VARCHAR(255), country VARCHAR(255), gender VARCHAR(10));CREATE TABLE donations (id INT, donor_id INT, cause_id INT, amount DECIMAL(10, 2), donation_date DATE);
SELECT dn.gender, (SUM(d.amount) / (SELECT SUM(amount) FROM donations d INNER JOIN donors dn ON d.donor_id = dn.id WHERE d.donation_date >= DATE_SUB(NOW(), INTERVAL 3 YEAR)) * 100) AS percentage FROM donations d INNER JOIN donors dn ON d.donor_id = dn.id WHERE d.donation_date >= DATE_SUB(NOW(), INTERVAL 3 YEAR) GROUP BY dn.gender;