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: Liste o número de novos voluntários por mês, que tenham doado no mesmo mês.
 ###Tabelas: 
CREATE TABLE volunteers (id INT, volunteer_name VARCHAR(50), volunteer_date DATE); INSERT INTO volunteers (id, volunteer_name, volunteer_date) VALUES (1, 'John Doe', '2021-01-05'), (2, 'Jane Smith', '2021-03-15'), (3, 'Alice Johnson', '2021-01-20'), (4, 'Bob Brown', '2021-02-01'), (5, 'Mary White', '2021-04-10'); CREATE TABLE donations (id INT, donation_amount DECIMAL(10,2), donation_date DATE, volunteer_id INT); INSERT INTO donations (id, donation_amount, donation_date, volunteer_id) VALUES (1, 50.00, '2021-01-05', 1), (2, 100.00, '2021-03-15', 2), (3, 75.00, '2021-01-20', 3), (4, 150.00, '2021-02-01', 4), (5, 200.00, '2021-04-01', 5), (6, 50.00, '2021-01-05', 3);
SELECT MONTH(v.volunteer_date) AS month, COUNT(DISTINCT v.volunteer_name) AS new_volunteers FROM volunteers v JOIN donations d ON v.id = d.volunteer_id WHERE YEAR(v.volunteer_date) = 2021 AND MONTH(v.volunteer_date) = MONTH(d.donation_date) GROUP BY month;