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: Qual é o nome e o valor da doação do principal doador para cada causa?
 ###Tabelas: 
CREATE TABLE causes (cause_id INT, cause_name VARCHAR(255)); INSERT INTO causes (cause_id, cause_name) VALUES (1, 'Education'), (2, 'Health'), (3, 'Environment'); CREATE TABLE donations (donor_id INT, donor_name VARCHAR(255), cause_id INT, donation_amount INT); INSERT INTO donations (donor_id, donor_name, cause_id, donation_amount) VALUES (1, 'John Doe', 1, 5000), (2, 'Jane Smith', 2, 7000), (3, 'Alice Johnson', 3, 8000), (4, 'Bob Brown', 1, 3000), (5, 'Charlie Davis', 3, 6000);
SELECT c.cause_name, d.donor_name, d.donation_amount FROM (SELECT donor_name, cause_id, donation_amount, ROW_NUMBER() OVER (PARTITION BY cause_id ORDER BY donation_amount DESC) AS rn FROM donations) d JOIN causes c ON d.cause_id = c.cause_id WHERE d.rn = 1;