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 fábricas receberam MaterialZ no ano atual, mas não no ano anterior?
 ###Tabelas: 
CREATE TABLE Factories (id INT, name TEXT, location TEXT);CREATE TABLE Materials (id INT, supplier_id INT, factory_id INT, material TEXT, quantity INT, date DATE);INSERT INTO Factories VALUES (5, 'FactoryA', 'LocationA'), (6, 'FactoryB', 'LocationB');INSERT INTO Materials VALUES (1, 1, 5, 'MaterialX', 100, '2021-06-01'), (2, 1, 5, 'MaterialY', 200, '2021-07-15'), (3, 2, 5, 'MaterialX', 150, '2021-08-01'), (4, 3, 6, 'MaterialZ', 50, '2020-09-10'), (5, 2, 5, 'MaterialY', 120, '2021-10-05'), (6, 1, 5, 'MaterialZ', 80, '2021-11-12'), (7, 3, 6, 'MaterialZ', 30, '2021-12-20');
SELECT DISTINCT m.factory_id FROM Materials m WHERE m.material = 'MaterialZ' AND m.date BETWEEN DATE_SUB(CURRENT_DATE, INTERVAL 1 YEAR) AND CURRENT_DATE AND m.factory_id NOT IN (SELECT m2.factory_id FROM Materials m2 WHERE m2.material = 'MaterialZ' AND m2.date BETWEEN DATE_SUB(CURRENT_DATE, INTERVAL 2 YEAR) AND DATE_SUB(CURRENT_DATE, INTERVAL 1 YEAR));