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: Identificar embarcações que tenham viajado para o Porto de Lagos nos últimos 3 meses, ordenadas pelo número de visitas em ordem decrescente.
 ###Tabelas: 
CREATE TABLE Routes (route_id INT, departure_port VARCHAR(20), arrival_port VARCHAR(20)); CREATE TABLE VesselTravel (vessel_id INT, route INT, departure_date DATE); INSERT INTO Routes (route_id, departure_port, arrival_port) VALUES (1, 'Los Angeles', 'Tokyo'), (2, 'Rotterdam', 'New York'), (3, 'Santos', 'Hong Kong'), (4, 'Mumbai', 'Shanghai'), (5, 'Buenos Aires', 'Jakarta'), (6, 'Dakar', 'Lagos'); INSERT INTO VesselTravel (vessel_id, route, departure_date) VALUES (1, 6, '2021-04-01'), (2, 6, '2021-05-01'), (3, 6, '2021-05-15'), (4, 6, '2021-06-01'), (5, 6, '2021-06-15'), (6, 6, '2021-07-01'), (7, 6, '2021-07-15');
SELECT vessel_id, COUNT(*) as num_visits FROM VesselTravel JOIN Routes ON VesselTravel.route = Routes.route_id WHERE Routes.arrival_port = 'Lagos' AND VesselTravel.departure_date >= DATEADD(month, -3, GETDATE()) GROUP BY vessel_id ORDER BY num_visits DESC;