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: Quais programas tiveram os maiores valores de doação em 2022, classificados em ordem decrescente?
 ###Tabelas: 
CREATE TABLE Programs (ProgramID INT, ProgramName VARCHAR(50), StartDate DATE); CREATE TABLE Donations (DonationID INT, ProgramID INT, DonorID INT, DonationDate DATE, Amount DECIMAL(10,2)); INSERT INTO Programs (ProgramID, ProgramName, StartDate) VALUES (1, 'ProgramA', '2022-01-01'), (2, 'ProgramB', '2022-01-01'), (3, 'ProgramC', '2022-01-01'); INSERT INTO Donations (DonationID, ProgramID, DonorID, DonationDate, Amount) VALUES (1, 1, 1, '2022-01-01', 50.00), (2, 1, 2, '2022-01-02', 100.00), (3, 2, 3, '2022-01-01', 75.00), (4, NULL, 4, '2022-01-01', 25.00);
SELECT p.ProgramName, SUM(d.Amount) AS TotalDonated FROM Programs p JOIN Donations d ON p.ProgramID = d.ProgramID WHERE YEAR(d.DonationDate) = 2022 GROUP BY p.ProgramName ORDER BY TotalDonated DESC;