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: Quantos navios viajaram entre o Porto de Mumbai e o Porto de Xangai nos últimos 6 meses?
 ###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, travel_time INT); 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'); INSERT INTO VesselTravel (vessel_id, route, departure_date, travel_time) VALUES (1, 1, '2021-01-01', 14), (2, 1, '2021-02-01', 15), (3, 1, '2021-03-01', 16), (4, 4, '2021-04-01', 15), (5, 4, '2021-05-01', 16), (6, 4, '2021-06-01', 17), (7, 4, '2021-07-01', 18);
SELECT COUNT(DISTINCT vessel_id) as num_vessels FROM VesselTravel JOIN Routes ON VesselTravel.route = Routes.route_id WHERE Routes.departure_port = 'Mumbai' AND Routes.arrival_port = 'Shanghai' AND VesselTravel.departure_date >= DATEADD(month, -6, GETDATE());