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: Listar todas as embarcações que visitaram o porto 'Singapura' desde 2021-01-01 ordenadas pela data de sua última visita.
 ###Tabelas: 
CREATE TABLE vessels (vessel_id INT, vessel_name TEXT); INSERT INTO vessels (vessel_id, vessel_name) VALUES (1, 'Vessel A'), (2, 'Vessel B'); CREATE TABLE visits (visit_id INT, vessel_id INT, port_id INT, visit_date DATE); INSERT INTO visits (visit_id, vessel_id, port_id, visit_date) VALUES (1, 1, 3, '2021-02-01'), (2, 2, 3, '2021-03-01'), (3, 1, 3, '2021-04-01');
SELECT vessel_name, MAX(visit_date) FROM visits JOIN vessels ON visits.vessel_id = vessels.vessel_id WHERE port_id = (SELECT port_id FROM ports WHERE port_name = 'Singapore') AND visit_date >= '2021-01-01' GROUP BY vessel_name ORDER BY MAX(visit_date) DESC;