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: Encontre os 3 principais produtos químicos com as maiores vendas totais no Canadá, ordenados por vendas totais em ordem decrescente.
 ###Tabelas: 
CREATE TABLE products (product_id INT, product_name TEXT, country TEXT, total_sales FLOAT); INSERT INTO products (product_id, product_name, country, total_sales) VALUES (1, 'Product A', 'Canada', 50000), (2, 'Product B', 'Canada', 75000), (3, 'Product C', 'Canada', 40000), (4, 'Product D', 'Canada', 60000);
SELECT product_name, total_sales, RANK() OVER (ORDER BY total_sales DESC) as rank FROM products WHERE country = 'Canada' GROUP BY product_name HAVING rank <= 3;