-
A questão está ERRADA. A operação de interseção não é exigida, pois o resultado pode ser obtido apenas com junção natural, seleção e projeção. Por exemplo:
PROJEÇÃOprofissao (SELEÇÃOnome='ALPHA'(cliente JUNÇÃO NATURAL trabalha JUNÇÃO NATURAL empresa))
Nesse caso, a junção natural irá fazer a relação pelos campos comuns quando idênticos e a seleção irá escolher . Vale notar que está se assumindo que cpf, (cpf,cnpj) e cnpj são as chaves primárias. Caso não sejam, não há como resolver a questão, pois falta informação na questão (dependendo de quais forem as chaves primárias, a questão pode estar certa ou errada).
-
Alguém comenta plz.
-
Oi Pessoal!
Ao meu ver essa questão pegou no Português, quando o enunciado diz: "exige, ao menos, a operação de interseção das relações cliente, trabalha e empresa."
Note que a EXPRESSÃO "ao menos" significa “no mínimo” , ou seja, também conseguiremos realizar o que a questão pede.
Por isso acho que a questão está correta.
Por favor, se alguém discordar da minha interpretação, me corrija.
Bons estudos
-
questão #@$@###!
o cara que fez é bem imaginativo mesmo hehehehe
em oracle ficaria assim:
select c.cpf from cliente c
intersect
select t.cpf from trabalha t inner join empresa e on t.cnpj = e.cnpj where
e.nome = 'ALPHA';
infelizmente, não dá pra dizer que está errada...
-
Do jeito que está colocado, parece que ele quer fazer uma interseção entre as três relações - para ser processada, exige, ao menos, a operação de interseção das relações cliente, trabalha e empresa - ... ¬¬ ... ERRADO NA HORA !!! Sem nem pensar.
Tinha tudo para ser uma boa questão ... Mas o português tá uma merda.
-
Essa questão é realmente complicada pelo português. É possível fazê-la usando a interseção das três tabelas e abaixo eu mostro como, mas eu tenho outra consideração a fazer.
Projeção de Cliente em CPF. Ficamos somente com CPF. Vou chamar de PC
Projeção de Tabalha em CPF. Ficamos somente com CPF. Vou chamar de PT
PC interseção PT = CPF comum das duas. Vou chamar de iCPF (primeira interseção)
Join entre Trabalha e iCPF pelo CPF. Vou chamar de iCPFCNPJ
Projeção de iCPFCNPJ em CNPJ. Vou chamar de PCNPJ
Projeção de Empresa em CNPJ; Vou chamar de PECNPJ
PECNPJ intersceção PCNPJ = iCNPJ (indiretamente, interseção do resultado das duas primeiras com a terceira)
Temos todos os CNPJs comuns.
Join entre iCNPJ e empresa onde nome = ALPHA.
É possível fazer com as interseções. Uma coisa que precisamos pensar a respeito é: se um join possui uma interseção dentro dele.
Explicando melhor: se academicamente, um join é uma operação que faz uma interseção. Eu não sei se procede, se proceder, a questão nem precisaria de análise.
Espero ter ajudado.
-
Na minha opinião, a questão está incorreta.
De acordo com o Navathe, 6ª Edição:
"It has been shown that the set of relational algebra operations {σ, π, ∪, ρ, –, ×} is a
complete set; that is, any of the other original relational algebra operations can be
expressed as a sequence of operations from this set. For example, the INTERSECTION
operation can be expressed by using UNION and MINUS as follows:
R ∩ S ≡ (R ∪ S) – ((R – S) ∪ (S – R))"
Logo, não é necessário processar a operação de interseção.
Att.