Magna Concursos
2270910 Ano: 2012
Disciplina: TI - Banco de Dados
Banca: UFSCAR
Orgão: UFSCAR
Provas:

Considere o esquema de relações, observando que nesta notação a chave primária da relação está grifada (sublinhada)

Projeto(nroproj, nomeproj, depnum)

TrabalhaEm(CPF,nroproj)

Empregado(CPF, Nome, Sobrenome, dataNascimento)

Considere a consulta em álgebra relacional para obter Resultado:

Proj5 ← πnroproj(σdepnum=5(Projeto))

EmpProj ← πCPF,nroproj(TrabalhaEm)

EmpProj5 ← EmpProj ÷ Proj5

Resultado ← πNome,Sobrenome(EmpProj5 * Empregado)

Considere ainda que o operador DIVISION da álgebra relacional não está implementado em qualquer versão da linguagem SQL e que os operadores CONTAINS, EXCEPT, EXISTS E NOT EXISTS estão implementados em alguma versão da linguagem SQL.

Analise as consultas SQL I, II e III, descritas a seguir, em relação à expressão de consulta em álgebra relacional sobre o esquema de relações apresentado.

I) SELECT Nome, Sobrenome

FROM Empregado

WHERE ((SELECT TrabalhaEm.nroproj

FROM TrabalhaEm

WHERE Empregado.CPF=TrabalhaEm.CPF)

CONTAINS

(SELECT Projeto.nroproj

FROM Projeto

WHERE depnum=5));

II) SELECT Nome, Sobrenome

FROM Empregado

WHERE NOT EXISTS

((SELECT Projeto.nroproj

FROM Projeto

WHERE depnum=5)

EXCEPT

(SELECT TrabalhaEm.nroproj

FROM TrabalhaEm

WHERE Empregado.CPF=TrabalhaEm.CPF) );

III) SELECT Nome, Sobrenome

FROM Empregado E

WHERE NOT EXISTS

(SELECT *

FROM TrabalhaEm TE1

WHERE (TE1.nroproj IN (SELECT Projeto.nroproj

FROM Projeto

WHERE depnum=5))

AND

EXISTS (SELECT *

FROM TrabalhaEm TE2

WHERE TE2.CPF = TE1.CPF

AND E2.nroproj=TE1.nroproj));

Pode-se afirmar que a expressão de consulta em álgebra relacional:

 

Provas

Questão presente nas seguintes provas

Analista de TI

60 Questões