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: Quantos doadores únicos doaram para cada programa?
 ###Tabelas: 
CREATE TABLE Programs (ProgramID INT, ProgramName VARCHAR(255)); INSERT INTO Programs (ProgramID, ProgramName) VALUES (1, 'Education'), (2, 'Health'), (3, 'Environment'); CREATE TABLE DonorsPrograms (DonorID INT, ProgramID INT); INSERT INTO DonorsPrograms (DonorID, ProgramID) VALUES (1, 1), (2, 1), (3, 2), (4, 2), (5, 3), (6, 1); CREATE TABLE Donations (DonationID INT, DonorID INT, DonationAmount DECIMAL(10, 2)); INSERT INTO Donations (DonationID, DonorID, DonationAmount) VALUES (1, 1, 100), (2, 1, 200), (3, 2, 50), (4, 3, 75), (5, 4, 300), (6, 6, 50);
SELECT Programs.ProgramName, COUNT(DISTINCT DonorsPrograms.DonorID) AS UniqueDonors FROM Programs INNER JOIN DonorsPrograms ON Programs.ProgramID = DonorsPrograms.ProgramID INNER JOIN Donations ON DonorsPrograms.DonorID = Donations.DonorID GROUP BY Programs.ProgramName;