Pular para o conteúdo principal

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

Banco de DadosSQL
Código
cg004131
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Nível
Superior
Cargo
Analista - Desenvolvimento de Sistemas
O analista de suporte de banco de dados do supermercado solicitou que a coluna QTD_ESTOQUE passasse a conter a quantidade de itens em estoque de produtos do tipo 2. Embora ele reconheça que isso resultará em redundância, os relatórios de performance mostram que existe um desperdício de recursos computacionais significativo com o cálculo recorrente do total de itens em estoque de produtos do tipo 2.Qual comando SQL irá atualizar corretamente a coluna QTD_ESTOQUE com a quantidade de itens em estoque relativa a cada um dos produtos do tipo 2 comercializados pelo supermercado?
  1. AUPDATE PRODUTO P SET QTD_ESTOQUE=(SELECT COUNT(*) FROM ITEM WHERE COD_PROD=P.COD)
  2. BUPDATE PRODUTO P SET QTD_ESTOQUE=(SELECT COUNT(*) FROM ITEM WHERE COD_PROD=P.COD AND P.TIPO=2)
  3. CUPDATE PRODUTO P SET QTD_ESTOQUE=(SELECT COUNT(DISTINCT COD_PROD) FROM ITEM WHERE COD_PROD=P.COD AND P.TIPO=2)
  4. DUPDATE PRODUTO P SET QTD_ESTOQUE=(SELECT COUNT(COD_PROD) FROM ITEM WHERE COD_PROD=P.COD) WHERE TIPO = 2
  5. EUPDATE PRODUTO P SET QTD_ESTOQUE=(SELECT COUNT(DISTINCT COD_PROD) FROM ITEM WHERE COD_PROD=P.COD) WHERE TIPO=2
Revelar gabarito e comentário

GabaritoD — UPDATE PRODUTO P SET QTD_ESTOQUE=(SELECT COUNT(COD_PROD) FROM ITEM WHERE COD_PROD=P.COD) WHERE TIPO = 2

Link permanente: /questoes/cg004131