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: Calcular o tempo total de viagem (em dias) para cada embarcação que viajou para o Porto de Dar es Salaam nos últimos 6 meses, ordenado pelo tempo total de viagem em ordem decrescente.
 ###Tabelas: 
CREATE TABLE Vessels (vessel_id INT, vessel_name VARCHAR(20)); 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 Vessels (vessel_id, vessel_name) VALUES (1, 'Vessel1'), (2, 'Vessel2'), (3, 'Vessel3'), (4, 'Vessel4'), (5, 'Vessel5'), (6, 'Vessel6'), (7, 'Vessel7'); 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'), (7, 'Valparaiso', 'Singapore'), (8, 'Dar es Salaam', 'Sydney'); INSERT INTO VesselTravel (vessel_id, route, departure_date, travel_time) VALUES (1, 8, '2021-02-01', 55), (2, 8, '2021-03-01', 56), (3, 8, '2021-04-01', 57), (4, 8, '2021-05-01', 54), (5, 8, '2021-06-01', 55), (6, 8, '2021-07-01', 56);
SELECT v.vessel_id, SUM(travel_time) as total_travel_time FROM Vessels v JOIN VesselTravel vt ON v.vessel_id = vt.vessel_id JOIN Routes r ON vt.route = r.route_id WHERE r.arrival_port = 'Dar es Salaam' AND vt.departure_date >= DATEADD(month, -6, GETDATE()) GROUP BY v.vessel_id ORDER BY total_travel_time DESC;