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 os 2 principais ativos digitais com o maior volume total de transações na plataforma de negociação 'DEX', particionados por mês e ordenados pelo volume total de transações em ordem decrescente.
 ###Tabelas: 
CREATE TABLE DEX (transaction_date DATE, digital_asset VARCHAR(20), transaction_volume DECIMAL(10, 2)); INSERT INTO DEX (transaction_date, digital_asset, transaction_volume) VALUES ('2022-01-01', 'ETH', 5000.00), ('2022-01-01', 'BTC', 3000.00), ('2022-01-02', 'ETH', 6000.00), ('2022-01-02', 'BTC', 2000.00), ('2022-01-03', 'ETH', 4000.00), ('2022-01-03', 'BTC', 2500.00);
SELECT DATE_TRUNC('month', transaction_date) as month, digital_asset, SUM(transaction_volume) as total_volume, RANK() OVER (PARTITION BY month ORDER BY SUM(transaction_volume) DESC) as rank FROM DEX GROUP BY month, digital_asset, transaction_volume HAVING rank <= 2;