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: Quem foram os 3 principais doadores na categoria 'Educação' no segundo semestre de 2020?
 ###Tabelas: 
CREATE TABLE donors (id INT, name VARCHAR(50), category VARCHAR(20)); INSERT INTO donors (id, name, category) VALUES (1, 'John Doe', 'Education'), (2, 'Jane Smith', 'Health'), (3, 'Bob Johnson', 'Education'), (4, 'Alice Williams', 'Arts & Culture'); CREATE TABLE donations (id INT, donor_id INT, amount DECIMAL(10,2), donation_date DATE); INSERT INTO donations (id, donor_id, amount, donation_date) VALUES (1, 1, 1000.00, '2020-07-01'), (2, 1, 1500.00, '2020-08-15'), (3, 2, 2000.00, '2020-09-05'), (4, 3, 750.00, '2020-07-30'), (5, 4, 800.00, '2020-10-01');
SELECT d.name, SUM(donations.amount) as total_donations FROM donations JOIN donors ON donations.donor_id = donors.id WHERE donations.donation_date BETWEEN '2020-07-01' AND '2020-12-31' AND donors.category = 'Education' GROUP BY d.name ORDER BY total_donations DESC LIMIT 3;