Pular para o conteúdo principal

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

Banco de DadosSQL
Código
cg001993
Banca
CESGRANRIO
Órgão
LIQUIGÁS
Ano
2013
Nível
Superior
Cargo
LIQUIGAS - Profissional Júnior - Análise de Sistemas - Tecnologia da Informação
As tabelas a seguir pertencem ao esquema de um banco de dados de atletas de salto em distância.CREATE TABLE ATLETA ( COD NUMBER(5) NOT NULL, NOME VARCHAR2(50) NOT NULL, NUM_INSCR NUMBER(7), TELEFONE VARCHAR2(8) NOT NULL, CONSTRAINT ATLETA_PK PRIMARY KEY (COD))CREATE TABLE PROVA ( COD_ATL NUMBER(5) NOT NULL, COD_PROVA NUMBER(5) NOT NULL, MARCA NUMBER(5,2), CONSTRAINT PROVA_PK PRIMARY KEY (COD_ATL,COD_PROVA), CONSTRAINT PROVA_FK FOREIGN KEY (COD_ATL) REFERENCES ATLETA(COD))Observação:• A coluna MARCA, localizada na tabela PROVA, contém a distância, em metros, saltada por um atleta em uma prova.Seja x a média das marcas alcançadas por todos os saltos registrados na tabela PROVA.Qual consulta permite exibir o código dos atletas que realizaram mais de dois saltos cujas marcas são menores do que x?
  1. ASELECT P.COD_ATLFROM PROVA P WHERE COUNT(*) > 2GROUP BY P.COD_ATLHAVING P.MARCA < AVG(P.MARCA)
  2. BSELECT P.COD_ATLFROM PROVA PWHERE P.MARCA < (SELECT AVG(MARCA) FROM PROVA) AND COUNT(*) > 2GROUP BY COD_ATL
  3. CSELECT P.COD_ATLFROM PROVA PWHERE P.MARCA < (SELECT AVG(MARCA) FROM PROVA)GROUP BY COD_ATL HAVING COUNT(*) > 2
  4. DSELECT P.COD_ATL FROM PROVA PMINUS SELECT P.COD_ATLFROM PROVA PWHERE P.MARCA < (SELECT AVG(MARCA) FROM PROVA)GROUP BY COD_ATLHAVING COUNT(*) > 2
  5. ESELECT P.COD_ATLFROM PROVA PWHERE COUNT(*) > 2 AND P.MARCA < AVG(P.MARCA)GROUP BY P.COD_ATL
Revelar gabarito e comentário

GabaritoC — SELECT P.COD_ATL FROM PROVA P WHERE P.MARCA < (SELECT AVG(MARCA) FROM PROVA) GROUP BY COD_ATL HAVING COUNT(*) > 2

Link permanente: /questoes/cg001993