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 distribuição dos valores de contratos de defesa por agência contratante desde 2019?
 ###Tabelas: 
CREATE TABLE IF NOT EXISTS defense_contracts (contract_id INT, contract_value FLOAT, contract_date DATE, contracting_agency VARCHAR(255));
SELECT contracting_agency, AVG(contract_value) as avg_contract_value, COUNT(*) as num_contracts, MIN(contract_value) as min_contract_value, MAX(contract_value) as max_contract_value FROM defense_contracts WHERE contract_date >= '2019-01-01' GROUP BY contracting_agency;