SóProvas


ID
362026
Banca
FUNRIO
Órgão
FURP-SP
Ano
2010
Provas
Disciplina
Banco de Dados
Assuntos

SELECT cli_vendas.nome, cli_vendas.codigo, Count(*) AS ContarCódigoDoPedido, Max(Produtos.Quantidade) AS
MáxDeQuantidade
FROM Produtos, cli_vendas
WHERE (((cli_vendas.codigo)=Produtos.CódigoDoCliente))
GROUP BY cli_vendas.nome, cli_vendas.codigo
HAVING(count(produtos.CódigoDoCliente))>=6;

Com base na setença sql acima marque a alternativa correta.

Alternativas
Comentários
  • Acredito que a questão esteja mal formulada e que na pior das hipoteses o gabarito seja o item "b". Vejamos:

    • a) Todos os nome de clientes que tenham pedidos registrados em cli_vendas serão selecionados. (TALVEZ! como assim talvez? Bom! como eu não sei a carga inicial das tabelas envolvidas (ou seja, o estado atual da minha base), essa situação pode ou não ocorrer)
    • b) Somente serão selecionados aqueles pedidos nos quais haja no mínimo 6 itens. (CORRETO, a meu ver, é exatamente isso que a questão esta pedindo)
    • c) Somente serão selecionados aqueles pedidos nos quais haja no máximo 6 itens. (ERRADO, vide "b")
    • d) Não serão selecionados todos os nomes de clientes existentes na tabela cli_vendas. (TALVEZ! novamente não posso afirmar isso, pois não sei o estado atual da base de dados)
    • e) Serão selecionados pedidos onde o campo Cli_vendas. Quantidade seja Maximo. (ERRADO, não esta sendo feito este filtro na consulta)
  • "Não serão selecionados todos os nomes de clientes existentes na tabela cli_vendas."

    Quantos clientes são? Quantos solicitaram no minimo 6 itens? E se todos solicitaram no minimo 6 itens!?

    Questão mal formulada, a alternativa mais correta seria a letra B.

  • Essa banca costuma formular questões assim. Eu escolheria a b) sem dúvida, uma vez que as outras apresentam falhas e a d) eu não tenho como ter certeza uma vez que não sei sobre os dados da tabela.