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 os programas com orçamentos que diminuíram por pelo menos dois meses consecutivos.
 ###Tabelas: 
CREATE TABLE programs (program_id INT, program_name VARCHAR(50), budget DECIMAL(10, 2), category VARCHAR(50), budget_date DATE);
SELECT program_id, program_name, budget_date FROM (SELECT program_id, program_name, budget, category, budget_date, COUNT(CASE WHEN budget < LAG(budget) OVER (PARTITION BY program_id ORDER BY budget_date) THEN 1 END) OVER (PARTITION BY program_id ORDER BY budget_date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) as consecutive_decreases FROM programs) t WHERE consecutive_decreases >= 2;