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 número de profissionais de saúde em áreas rurais, categorizados por suas especialidades, nos últimos cinco anos?
 ###Tabelas: 
CREATE TABLE medical_professionals (professional_id INT, region VARCHAR(20), specialty VARCHAR(30), join_year INT); INSERT INTO medical_professionals (professional_id, region, specialty, join_year) VALUES (1, 'Rural', 'General Practitioner', 2018), (2, 'Urban', 'Cardiologist', 2019), (3, 'Rural', 'Pediatrician', 2020), (4, 'Urban', 'Oncologist', 2021), (5, 'Rural', 'Psychiatrist', 2022);
SELECT s.specialty, COUNT(mp.professional_id), s.year FROM medical_professionals mp JOIN ( SELECT region, specialty, EXTRACT(YEAR FROM age(join_year, CURRENT_DATE)) AS year FROM medical_professionals WHERE region = 'Rural' GROUP BY region, specialty, year ORDER BY year DESC LIMIT 5 ) s ON mp.specialty = s.specialty GROUP BY s.specialty, s.year;