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: Liste os 3 principais usuários com os maiores valores de transação no Canadá?
 ###Tabelas: 
CREATE TABLE transactions (user_id INT, transaction_amount DECIMAL(10, 2), transaction_date DATE, country VARCHAR(255)); INSERT INTO transactions (user_id, transaction_amount, transaction_date, country) VALUES (1, 50.00, '2022-01-01', 'Canada'), (2, 100.50, '2022-01-02', 'Canada'), (3, 200.00, '2022-01-03', 'Canada'), (4, 150.00, '2022-01-04', 'Canada');
SELECT user_id, transaction_amount FROM (SELECT user_id, transaction_amount, ROW_NUMBER() OVER (ORDER BY transaction_amount DESC) as rank FROM transactions WHERE country = 'Canada') as ranked_transactions WHERE rank <= 3;