Questão FC295883
Que comando SELECT do SQL retorna apenas o CNPJ e a razão social das empresas que não têm "ESG" como característica?
Linguagem SQL
CESGRANRIO · 2023
Uma empresa de investimentos financeiros busca identificar novas oportunidades de negócio para pessoas jurídicas, em especial dentre aquelas que têm como característica a adoção de governança ambiental, social e corporativa (conhecida como ESG, uma sigla em inglês).
Considere que existe um banco de dados nessa empresa com as seguintes tabelas (todas as chaves primárias são numéricas):
Empresa (CNPJ, razaoSocial, endereco)
Caracteristica (cod, sigla, nome)
Tem (CNPJ, cod)
Que comando SELECT do SQL retorna apenas o CNPJ e a razão social das empresas que não têm "ESG" como característica?
- SELECT *
FROM Empresa
WHERE Caracteristica.Sigla <> 'ESG'
- SELECT E.CNPJ, E.razaoSocial
FROM Empresa E
JOIN Tem T ON (E.CNPJ = T.CNPJ)
WHERE Tem.cod = 'ESG'
- SELECT E.CNPJ, E.razaoSocial
FROM Empresa E
JOIN Tem T ON (E.CNPJ = T.CNPJ)
JOIN Caracteristica C ON (C.cod = T.cod)
WHERE C.nome <> 'ESG'
- SELECT E.CNPJ, E.razaoSocial
FROM Empresa E
WHERE E.CNPJ NOT IN (
SELECT T.CNPJ
FROM Tem T
JOIN Caracteristica C ON (T.cod = C.cod)
WHERE C.sigla = 'ESG'
)
- SELECT Empresa.*
FROM Empresa, Tem
WHERE Empresa.CNPJ = Tem.cod
AND Tem.cod <> 'ESG'
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
A consulta principal usa SELECT para retornar CNPJ e razaoSocial da tabela Empresa e aplica o predicado NOT IN sobre uma subquery. Assim, só permanecem no resultado as empresas cujo CNPJ não aparece no conjunto produzido pela subquery.
A subquery é: SELECT T.CNPJ FROM Tem T JOIN Caracteristica C ON (T.cod = C.cod) WHERE C.sigla = 'ESG'. Ela realiza um JOIN entre Tem e Caracteristica pelo campo cod e filtra por 'ESG' na coluna sigla, retornando todos os CNPJs associados à característica ESG.
Finalmente, o uso de NOT IN na consulta externa exclui esses CNPJs, entregando apenas as empresas que não possuem a característica ESG. Os aliases E, T e C deixam a consulta clara e referenciam corretamente as colunas necessárias.
Conteúdo do catálogo FC Concursos · Atualizado em