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: Liste todos os grupos comunitários com os quais o Oficial 007 interagiu no último mês.
 ###Tabelas: 
CREATE TABLE community_groups (id SERIAL PRIMARY KEY, name VARCHAR(255)); CREATE TABLE officer_details (id SERIAL PRIMARY KEY, name VARCHAR(255), badge_number INTEGER); CREATE TABLE community_interaction (id SERIAL PRIMARY KEY, community_group_id INTEGER, officer_id INTEGER, interaction_type VARCHAR(255), interaction_timestamp TIMESTAMP); INSERT INTO community_groups (name) VALUES ('Neighborhood Watch'), ('Youth Council'), ('Senior Citizens Club'); INSERT INTO officer_details (name, badge_number) VALUES ('John Doe', 7), ('Jane Smith', 8); INSERT INTO community_interaction (community_group_id, officer_id, interaction_type, interaction_timestamp) VALUES (1, 7, 'Meeting', '2023-03-15 10:00:00'), (2, 8, 'Presentation', '2023-03-20 14:00:00');
SELECT cg.name FROM community_groups cg JOIN community_interaction ci ON cg.id = ci.community_group_id JOIN officer_details od ON od.id = ci.officer_id WHERE od.badge_number = 7 AND ci.interaction_timestamp >= (CURRENT_DATE - INTERVAL '1 month');