This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1. Apresente a árvore de consulta otimizada para a expressão abaixo. Considere todos os dados de eleições da República do Brasil (desde 1892) cadastrados no banco consultado, 98% do número de doações a campanhas feitas por pessoas que não os próprios candidatos, 2% do número de doações com valor superior a 10.000, 1,5% das candidaturas em 2016 e 14% de pessoas rés. Considere ainda cada registro de Pessoa ocupando 256 bytes e índice primário por id<X> para cada tabela <X>, além de índice auxiliar por cada chave estrangeira, D.valor, C.ano e P.dtNasc. | |
SELECT P.*, SUM(D.valor) AS total, | |
COUNT (DISTINCT Cand.*) AS nroCands | |
FROM Pessoa AS P, Doacao AS D, Campanha AS C, Pessoa AS Cand | |
WHERE P.idP = D.idDoador AND D.idC = C.idC AND | |
C.idCand = Cand.idP AND P.idP = Cand.idP AND | |
D.valor > 10.000 AND C.ano > 2015 AND Cand.reu = ‘TRUE’ | |
GROUP BY P.* HAVING total > 100.000 | |
ORDER BY total, nroCands DESC; |