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 diferença média de preço mensal entre as assinaturas Basic e Premium?
 ###Tabelas: 
CREATE TABLE gym_memberships (id INT, member_name VARCHAR(50), start_date DATE, end_date DATE, membership_type VARCHAR(50), price DECIMAL(5,2));
SELECT AVG(price_diff) AS avg_monthly_price_difference FROM (SELECT DATEDIFF(end_date, start_date) / 12 AS months_between, AVG(CASE WHEN membership_type = 'Premium' THEN price ELSE 0 END) - AVG(CASE WHEN membership_type = 'Basic' THEN price ELSE 0 END) AS price_diff FROM gym_memberships WHERE start_date BETWEEN '2022-01-01' AND '2022-12-31' GROUP BY months_between) AS subquery;