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 é a média de geração de resíduos por lote de produção, para cada produto químico, nos últimos seis meses?
 ###Tabelas: 
CREATE TABLE production_batch (batch_id INT, batch_date DATE, product_id INT, product_name TEXT, waste_generation FLOAT); INSERT INTO production_batch (batch_id, batch_date, product_id, product_name, waste_generation) VALUES (1, '2022-01-01', 1, 'Product X', 12.3), (2, '2022-02-05', 2, 'Product Y', 15.6), (3, '2022-03-10', 3, 'Product Z', 18.1);
SELECT product_name, AVG(waste_generation) OVER (PARTITION BY product_id ORDER BY batch_date ROWS BETWEEN 179 PRECEDING AND CURRENT ROW) AS avg_waste_rate FROM production_batch WHERE batch_date >= DATEADD(month, -6, CURRENT_DATE);