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 é o orçamento total para cada programa em 2023, incluindo quaisquer atualizações feitas nos orçamentos?
 ###Tabelas: 
CREATE TABLE Programs (ProgramID INT, Name TEXT, InitialBudget DECIMAL(10,2));CREATE TABLE BudgetUpdates (UpdateID INT, ProgramID INT, NewBudget DECIMAL(10,2), UpdateDate DATE);
SELECT P.Name, SUM(CASE WHEN BU.UpdateDate = (SELECT MAX(UpdateDate) FROM BudgetUpdates BU2 WHERE BU2.ProgramID = BU.ProgramID) THEN BU.NewBudget ELSE P.InitialBudget END) as TotalBudget  FROM Programs P LEFT JOIN BudgetUpdates BU ON P.ProgramID = BU.ProgramID GROUP BY P.ProgramID, P.Name;