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: Exibir o número total de patentes de legaltech arquivadas pelas 3 principais empresas de arquivamento de patentes.
 ###Tabelas: 
CREATE TABLE legaltech_patents (patent_id INT, filing_year INT, company VARCHAR(50)); INSERT INTO legaltech_patents (patent_id, filing_year, company) VALUES (1, 2019, 'TechCorp'), (2, 2020, 'LegalLabs'), (3, 2019, 'JusticeTech'), (4, 2018, 'TechCorp'), (5, 2020, 'JusticeTech');
SELECT company, SUM(1) AS total_patents FROM (SELECT company, ROW_NUMBER() OVER (PARTITION BY company ORDER BY filing_year DESC) AS rank FROM legaltech_patents) t WHERE rank <= 3 GROUP BY company;