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: Qual é a duração mediana dos casos encerrados para cada advogado no departamento de "defesa criminal"?
 ###Tabelas: 
CREATE TABLE attorneys (attorney_id INT, name VARCHAR(50), department VARCHAR(50)); INSERT INTO attorneys (attorney_id, name, department) VALUES (1, 'John Doe', 'criminal_defense'); INSERT INTO attorneys (attorney_id, name, department) VALUES (2, 'Jane Smith', 'criminal_defense'); CREATE TABLE cases (case_id INT, attorney_id INT, status VARCHAR(50), duration INT); INSERT INTO cases (case_id, attorney_id, status, duration) VALUES (1, 1, 'closed', 25); INSERT INTO cases (case_id, attorney_id, status, duration) VALUES (2, 1, 'closed', 30); INSERT INTO cases (case_id, attorney_id, status, duration) VALUES (3, 2, 'closed', 40);
SELECT attorney_id, MEDIAN(duration) OVER (PARTITION BY attorney_id) as median_duration FROM cases WHERE status = 'closed';