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: Identificar os top 3 produtos cosméticos certificados como livres de crueldade com o maior volume de vendas que contenham 'rose' como ingrediente no mercado canadense.
 ###Tabelas: 
CREATE TABLE ingredients (ingredient_id INT, product_id INT, ingredient_name VARCHAR(50)); INSERT INTO ingredients (ingredient_id, product_id, ingredient_name) VALUES (1, 1, 'aloe vera'), (2, 2, 'lavender'), (3, 4, 'rose'), (4, 5, 'rose'); CREATE TABLE products (product_id INT, product_name VARCHAR(100), sales INT, certification VARCHAR(20)); INSERT INTO products (product_id, product_name, sales, certification) VALUES (1, 'Lipstick A', 6000, 'cruelty-free'), (2, 'Mascara B', 7000, 'not_certified'), (4, 'Lotion D', 9000, 'cruelty-free'), (5, 'Serum E', 10000, 'cruelty-free'); CREATE TABLE countries (country_code CHAR(2), country_name VARCHAR(50)); INSERT INTO countries (country_code, country_name) VALUES ('CA', 'Canada');
SELECT products.product_name, products.sales FROM ingredients JOIN products ON ingredients.product_id = products.product_id JOIN countries ON products.country_code = countries.country_code WHERE ingredients.ingredient_name = 'rose' AND products.certification = 'cruelty-free' AND countries.country_name = 'Canada' ORDER BY products.sales DESC LIMIT 3;