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: Determine a média móvel de 30 dias de usuários ativos diários para cada aplicativo descentralizado na tabela 'DAppUsage', ordenada por data e média móvel em ordem decrescente.
 ###Tabelas: 
CREATE TABLE DAppUsage (usage_date DATE, dapp_name VARCHAR(30), daily_active_users INT); INSERT INTO DAppUsage (usage_date, dapp_name, daily_active_users) VALUES ('2022-01-01', 'Uniswap', 1500), ('2022-01-01', 'Sushiswap', 1200), ('2022-01-02', 'Uniswap', 1600), ('2022-01-02', 'Sushiswap', 1300), ('2022-01-03', 'Uniswap', 1400), ('2022-01-03', 'Sushiswap', 1100);
SELECT usage_date, dapp_name, AVG(daily_active_users) OVER (PARTITION BY dapp_name ORDER BY usage_date ROWS BETWEEN 29 PRECEDING AND CURRENT ROW) as moving_avg FROM DAppUsage ORDER BY usage_date, moving_avg DESC;