

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
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)
);

A sentença SQL que MELHOR responde à consulta “Listar o nome dos engenheiros que não fazem parte de nenhuma equipe” é:
SELECT e.nome FROM engenheiro e
WHERE e.codigo NOT IN (select engenheiro FROM equipe)
SELECT e.nome FROM engenheiro e
WHERE e.codigo NOT IN (select obra FROM equipe)
SELECT e.nome FROM engenheiro e
WHERE e.codigo NOT IN (select codigo FROM obra)
SELECT e.nome FROM engenheiro e
WHERE NOT EXISTS (SELECT 1 FROM equipe ee
WHERE ee.engenheiro = e.identificacao)