Imagem de fundo

A sentença SQL que MELHOR responde à consulta “Listar o...

De acordo com o estado e o script em linguagem SQL para criação das tabelas status, obra, engenheiro e equipe, responda às questões 31 a 33.


CREATE TABLE status (

codigo int NOT NULL,

descricao varchar(100) NOT NULL,

PRIMARY KEY (codigo),

UNIQUE (descricao)

);


CREATE TABLE obra (

codigo int NOT NULL,

nome varchar(100) NOT NULL,

local varchar(100) NOT NULL,

status int NOT NULL,

PRIMARY KEY (codigo),

UNIQUE (nome),

FOREIGN KEY (status) REFERENCES status (codigo)

);


CREATE TABLE engenheiro (

codigo int NOT NULL,

nome varchar(100) NOT NULL,

identificacao char(10) NOT NULL

PRIMARY KEY (codigo),

);


CREATE TABLE equipe (

obra int NOT NULL,

engenheiro int NOT NULL,

horas int NOT NULL,

PRIMARY KEY (obra,engenheiro),

FOREIGN KEY (obra) REFERENCES obra (codigo),

FOREIGN KEY (engenheiro) REFERENCES engenheiro (codigo)

);


Imagem associada para resolução da questão

A sentença SQL que MELHOR responde à consulta “Listar o nome dos engenheiros que não fazem parte de nenhuma equipe” é:


A

SELECT e.nome FROM engenheiro e

WHERE e.codigo NOT IN (select engenheiro FROM equipe)


B

SELECT e.nome FROM engenheiro e

WHERE e.codigo NOT IN (select obra FROM equipe)


C

SELECT e.nome FROM engenheiro e

WHERE e.codigo NOT IN (select codigo FROM obra)


D

SELECT e.nome FROM engenheiro e

WHERE NOT EXISTS (SELECT 1 FROM equipe ee

WHERE ee.engenheiro = e.identificacao)