Pular para o conteúdo principal

Questão de Banco de Dados — SQL — CESGRANRIO 2023

Banco de DadosSQL
Código
cg018261
Banca
CESGRANRIO
Órgão
Banco do Brasil
Ano
2023
Nível
Médio
Cargo
Agente de Tecnologia - Microrregião 158 - TI
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?
  1. ASELECT *FROM EmpresaWHERE Caracteristica.Sigla <> 'ESG'
  2. BSELECT E.CNPJ, E.razaoSocialFROM Empresa EJOIN Tem T ON (E.CNPJ = T.CNPJ)WHERE Tem.cod = 'ESG'
  3. CSELECT E.CNPJ, E.razaoSocialFROM Empresa EJOIN Tem T ON (E.CNPJ = T.CNPJ)JOIN Caracteristica C ON (C.cod = T.cod)WHERE C.nome <> 'ESG'
  4. DSELECT E.CNPJ, E.razaoSocialFROM Empresa EWHERE E.CNPJ NOT IN (SELECT T.CNPJFROM Tem TJOIN Caracteristica C ON (T.cod = C.cod)WHERE C.sigla = 'ESG')
  5. ESELECT Empresa.*FROM Empresa, TemWHERE Empresa.CNPJ = Tem.codAND Tem.cod <> 'ESG'
Revelar gabarito e comentário

GabaritoD — 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' )

Link permanente: /questoes/cg018261