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 médio para projetos de infraestrutura rural, categorizado por tipo, para cada ano?
 ###Tabelas: 
CREATE TABLE rural_infrastructure (id INT, project_name TEXT, budget INT, category TEXT, completion_date DATE); INSERT INTO rural_infrastructure (id, project_name, budget, category, completion_date) VALUES (1, 'Road Construction', 50000, 'Roads', '2018-05-01'), (2, 'Clean Water Supply', 75000, 'Water', '2019-08-15'), (3, 'Electricity Grid Expansion', 80000, 'Energy', '2020-12-31');
SELECT category, YEAR(completion_date) AS completion_year, AVG(budget) FROM rural_infrastructure GROUP BY category, YEAR(completion_date);