-- questao 01 - inserts select * from pessoas alter table pessoas add salario numeric(10,2); insert into pessoas values (4,'Paulo') insert into pessoas values (5,'Pedro',null) insert into pessoas (codigo,salario,nome) values (7,'Maria',null) -- questao 02 - comando update update alugueis set valor = valor*1.05; update alugueis set valor = valor + (valor*0.05) select * from alugueis; -- questao 03 - comando delete select * from recebimentos; delete from recebimentos where aluguel=2 and (pagamento is null) -- questao 04. FUC que mostra o nome do prédio, a porcentagem e o nome dos proprietários de cada apartamento. select * from apartamentos; select * from proprietarios select predios.descricao, apartamento_numero, pessoas.nome, porcentagem from predios, apartamentos, proprietarios, pessoas where predios.codigo = apartamentos.predio and apartamentos.numero = proprietarios.apartamento_numero and apartamentos.predio = proprietarios.apartamento_predio and proprietarios.pessoa = pessoas.codigo order by predios.descricao, apartamentos.numero, porcentagem, pessoas.nome; -- questao 05. FUC predio, apartamento, total recebido select p.descricao, a.numero, sum(r.valor) as total_recebido from predios p, apartamentos a, alugueis al, recebimentos r where p.codigo = a.predio and a.numero = al.apartamento_numero and a.predio = al.apartamento_predio and al.numero = r.aluguel and (r.pagamento is not null) group by p.descricao, a.numero update recebimentos set pagamento='2018-06-12' where codigo=2 select * from recebimentos select * from alugueis -- questao 06 - 6. FUC que mostra o nome da pessoa e os contratos de alugueis que possui. select pessoas.nome, alugueis.numero, alugueis.valor from pessoas, alugueis where pessoas.codigo = alugueis.pessoa select * from alugueis -- questao 07 FUC que mostra por contrato os valores de alugueis a receber. select alugueis.numero, sum(r.valor) from alugueis, recebimentos r where alugueis.numero = r.aluguel and (pagamento is null) group by alugueis.numero select * from recebimentos -- questao 08. FUC que mostra para cada proprietário o valor de aluguel que tem a receber. select pessoas.nome, sum(r.valor*p.porcentagem/100) from pessoas, proprietarios p, apartamentos a, alugueis, recebimentos r where pessoas.codigo = p.pessoa and p.apartamento_numero = a.numero and p.apartamento_predio = a.predio and a.numero = alugueis.apartamento_numero and a.predio = alugueis.apartamento_predio and alugueis.numero = r.aluguel and (pagamento is null) group by pessoas.nome