Pular para o conteúdo principal

Questão de Arquitetura de Software — Banco de Dados — IF-MS 2016

Arquitetura de SoftwareBanco de Dados
Código
qq207147
Banca
IF-MS
Órgão
IF-MS
Ano
2016
Nível
Superior
Cargo
Professor - Informática/Desenvolvimento Web
Considere o seguinte esquema de banco de dados:funcionario(matricula, cpf, rg, nome, idade, sobrenome, nome_mae, nome_pai, endereco, salario, idcidade(FK), idsetor(FK))estado(sigla_estado, nome_estado)cidade(idcidade, nome_cidade, sigla_estado(FK))setor(idsetor, nome_setor, numero_setor, descricao_setor)Considerando que os atributos sublinhados representam chaves primárias e os atributos seguidos de (FK) representam chaves estrangeiras, identifique qual, dentre as consultas abaixo, retorna o endereço, nome da cidade e sigla do estado de todos os funcionários que possuem idade entre 21 e 35 anos e trabalham nos setores 15 ou 30.
  1. ASELECT f.endereco, c.nome_cidade, c.sigla_estado FROM funcionario f INNER JOIN cidade c ON f.idcidade = c.idcidade INNER JOIN setor s ON s.idsetor = f.idsetor WHERE f.idade BETWEEN 21 AND 35 AND s.numero_setor IN(15, 30)
  2. BSELECT f.endereco, c.nome_cidade, c.sigla_estado FROM funcionario f RIGHT JOIN cidade c ON f.idcidade = c.idcidade RIGHT JOIN setor s ON s.idsetor = f.idsetor WHERE f.idade == 21 AND f.idade 35 AND s.numero_setor == 15 AND s.numero_setor 30
  3. CSELECT f.endereco, c.nome_cidade, c.sigla_estado FROM funcionario f LEFT OUTER JOIN cidade c ON f.idcidade = c.idcidade LEFT OUTER JOIN setor s ON s.idsetor = f.idsetor WHERE f.idade == 21 OR f.idade 35 OR s.numero_setor == 15 OR s.numero_setor 30
  4. DSELECT f.endereco, c.nome_cidade, c.sigla_estado FROM funcionario f INNER JOIN cidade c ON f.idcidade = c.idcidade RIGHT JOIN setor s ON s.idsetor = f.idsetor WHERE f.idade BETWEEN 21 AND 35 AND s.numero_setor BETWEEN 15 AND 30
  5. ESELECT f.endereco, c.nome_cidade, c.sigla_estado FROM funcionario f, cidade c, setor s WHERE f.idcidade = c.idcidade AND s.idsetor = f.idsetor AND f.idade = 21 AND f.idade = 35 AND s.numero_setor = 15 AND s.numero_setor = 30
Revelar gabarito e comentário

GabaritoA — SELECT f.endereco, c.nome_cidade, c.sigla_estado FROM funcionario f INNER JOIN cidade c ON f.idcidade = c.idcidade INNER JOIN setor s ON s.idsetor = f.idsetor WHERE f.idade BETWEEN 21 AND 35 AND s.numero_setor IN(15, 30)

Link permanente: /questoes/qq207147