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: Quais países receberam a maior assistência humanitária dos EUA nos últimos 3 anos?
 ###Tabelas: 
CREATE TABLE humanitarian_assistance (donor VARCHAR(255), recipient VARCHAR(255), assistance_amount DECIMAL(10,2), assistance_date DATE);
SELECT recipient, SUM(assistance_amount) as total_assistance FROM humanitarian_assistance WHERE donor = 'US' AND assistance_date BETWEEN DATE_SUB(CURDATE(), INTERVAL 3 YEAR) AND CURDATE() GROUP BY recipient ORDER BY total_assistance DESC LIMIT 5;