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 alocado para o transporte público em áreas rurais nos últimos 3 anos?
 ###Tabelas: 
CREATE TABLE fiscal_years (year_id INT, year_start DATE, year_end DATE); INSERT INTO fiscal_years (year_id, year_start, year_end) VALUES (1, '2019-01-01', '2019-12-31'), (2, '2020-01-01', '2020-12-31'), (3, '2021-01-01', '2021-12-31'); CREATE TABLE budget_allocations (budget_id INT, district_id INT, department VARCHAR(50), amount INT, year_id INT); INSERT INTO budget_allocations (budget_id, district_id, department, amount, year_id) VALUES (1, 1, 'Public Transportation', 50000, 1), (2, 1, 'Education', 40000, 1), (3, 2, 'Public Transportation', 45000, 2), (4, 2, 'Healthcare', 55000, 2), (5, 3, 'Public Transportation', 30000, 3), (6, 3, 'Healthcare', 70000, 3);
SELECT SUM(amount) FROM budget_allocations WHERE department = 'Public Transportation' AND area_type = 'Rural' AND year_id IN (SELECT year_id FROM fiscal_years WHERE year_start >= DATEADD(year, -3, GETDATE()));