Questão de Banco de Dados — SQL — FGV 2025
Banco de DadosSQL
- Código
- fg116125
- Banca
- FGV
- Órgão
- MPU
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista do - Perito em Tecnologia da Informação e Comunicação
Observe a inserção dos registros pelo seguinte script SQL.INSERT INTO Parte (ParteID, idade)VALUES (1 ,17);INSERT INTO Parte (ParteID, idade)VALUES (2 ,16);INSERT INTO Processo (processoID, data_audiencia,valor_causa)VALUES (1 ,'2025-02-05',1000);INSERT INTO Processo (processoID, data_audiencia,valor_causa)VALUES (2 ,'2025-10-05',2000);INSERT INTO ProcessoParte (processoID, parteid)VALUES (1 ,1);INSERT INTO ProcessoParte (processoID, parteid)VALUES (2 ,2);No PostgreSQL, para consultar os Processos (Processos) que envolvem partes menores que 18 anos, por ordem de maior Valor de Causa (valor_causa), cuja Audiência (data_audiencia) está agendada para os próximos 30 dias, deve-se executar o comando SQL:
- ASELECT p.processoid, p.valor_causa, p.data_audienciaFROM Parte pt, ProcessoParte pp , Processo pWHERE pp.parteid = pt.parteid andpp.processoid = p.processoidAND pt.idade < 18AND p.data_audiencia BETWEEN NOW()::DATE ANDNOW()::DATE + INTERVAL '30 days'ORDER BY p.valor_causa DESC
- BSELECT p.processoid as numero, SUM(p.valor_causa) asValorCausa, p.data_audienciaFROM processo pINNER JOIN parte pt ON pt.idade < 18INNER JOIN ProcessoParte pp ON pp.parteid = pt.parteidWHERE p.data_audiencia BETWEEN NOW() AND NOW() +INTERVAL '30 days'GROUP BY p.processoid, p.data_audienciaORDER BY ValorCausa DESC
- CSELECT p.processoid as numero, SUM(p.valor_causa) asValorCausa, p.data_audiencia as DataAudienciaFROM Processo pINNER JOIN ProcessoParte pp ON p.ProcessoID =pp.ProcessoIDINNER JOIN Parte pt ON pp.ParteID = pt.ParteIDWHERE pt.idade < 18AND p.data_audiencia > NOW() + INTERVAL '30 days'GROUP BY p.processoid, p.data_audienciaORDER BY ValorCausa ASC
- DSELECT p.processoid as numero, p.valor_causa,p.data_audienciaFROM Parte ptINNER JOIN Processo p ON pt.idade < 18AND p.data_audiencia BETWEEN NOW() AND CURRENT_DATE +DATE_PART('DAY', 30)
- ESELECT p.processoid, p.valor_causa, p.data_audienciaFROM processo pINNER JOIN parte pt ON pt.idade < 18WHERE p.data_audiencia BETWEEN NOW() AND NOW() + 30