Banco de dadosSql (2)
- (CESGRANRIO 2008)
Considere o seguinte enunciado para responder às questões de nos 31 a 34.
Uma empresa de geração de energia deseja armazenar um conjunto de dados importantes sobre os tipos de energia com que
trabalha e os seus campos de geração. Cada tipo de energia possui um código (identificador único), um nome e uma descrição.
Além disso, cada campo de geração possui um código (identificador único), um nome, uma região e um valor médio por
kW. Assume-se que:
. cada campo de geração de energia é de um, e somente um, tipo de energia;
. pode existir mais de um campo de geração para cada tipo de energia;
. podem ser previstos alguns tipos de energia para os quais ainda não existem campos de geração.
Suponha o seguinte esquema de relação que modela o problema descrito anteriormente, para responder às questões de nos 33 e 34.
TipoEnergia (codigo, nome, descricao)
CampoGeracao (codigo, nome, codigoTipoEnergia, regiao, valorMedioPorkW)
observação: o campo codigoTipoEnergia armazena o valor do código do tipo de energia de um campo de geração.
Qual comando SQL padrão retorna o código e o nome (somente) de todos os tipos de energia que possuem, pelo menos, um campo de geração em uma região chamada 'Santos'?
A) SELECT * FROM TipoEnergia WHERE codigo IN (SELECT codigoTipoEnergia FROM CampoGeracao WHERE regiao = 'Santos');
B) SELECT te.codigo, te.nome FROM TipoEnergia te WHERE te.codigo IN (SELECT cg.codigo FROM CampoGeracao cg WHERE cg.regiao = 'Santos');
C) SELECT te.codigo, te.nome FROM TipoEnergia te, CampoGeracao cg WHERE te.codigo=cg.codigo AND cg.regiao = 'Santos';
D) SELECT te.codigo, te.nome FROM TipoEnergia te, CampoGeracao cg WHERE te.codigo=cg.codigoTipoEnergia AND cg.regiao = 'Santos';
E) SELECT DISTINCT te.* FROM TipoEnergia te, CampoGeracao cg WHERE te.codigo=cg.codigoTipoEnergia AND cg.regiao = 'Santos';
Próximo:
EXERCÍCIOS - Exercício 218
Vamos para o Anterior: Exercício 216
Tente Este: Exercício 264
Primeiro: Exercício 1
VOLTAR ao índice: Banco de dados