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: Encontre o volume mensal de transações para as 2 principais categorias de produtos com os menores valores de transação no último trimestre, para os clientes que vivem em Tóquio?
 ###Tabelas: 
CREATE TABLE customers (customer_id INT, name VARCHAR(255), location VARCHAR(255)); CREATE TABLE transactions (transaction_id INT, customer_id INT, category_id INT, transaction_date DATE, amount DECIMAL(10,2)); CREATE TABLE products (product_id INT, name VARCHAR(255), category_id INT);
SELECT p.category_id, p.name, DATE_FORMAT(t.transaction_date, '%Y-%m') as transaction_month, SUM(t.amount) as monthly_transaction_volume FROM customers c INNER JOIN transactions t ON c.customer_id = t.customer_id INNER JOIN products p ON t.product_id = p.product_id WHERE c.location = 'Tokyo' AND p.category_id IN (SELECT t2.category_id FROM transactions t2 GROUP BY t2.category_id ORDER BY SUM(t2.amount) ASC LIMIT 2) AND t.transaction_date >= DATE_SUB(CURRENT_DATE, INTERVAL 3 MONTH) GROUP BY p.category_id, transaction_month;