SóProvas


ID
906301
Banca
FCC
Órgão
TRT - 9ª REGIÃO (PR)
Ano
2013
Provas
Disciplina
Banco de Dados
Assuntos

Considere o banco de dados SQL Server 2008.

Foi criada uma tabela denominada tabval formada pelas seguintes linhas e colunas:

      Codigo   Nome    Tamanho      Qtde
1      001      JOSE      92222222      3,00
2      002      ANA       93333333      1,50
3      001      JOSE       94444444      2,00
4      004      JOAO       95555555      2,50

Para criar um comando SQL que seja capaz de dar como resultado:

Codigo     Nome     Tamanho     Qtde
001          JOSE       94444444      5,00
002          ANA         93333333      1,50
004          JOAO       95555555      2,50

O comando SQL correto é:

Alternativas
Comentários
  • Analisemos as alternativas:

    a)SELECT max (Tamanho), sum(Qtde) FROM tabval GROUP BY Codigo, Nome, Tamanho, Qtde;

    Incorreta. Esta consulta retorna todos os registros da tabela, pois está fazendo agregação (GROUP BY) por todos os campos da tabela.

    b) SELECT Codigo, Nome, max (Tamanho) Tamanho, sum(Qtde) Qtde FROM tabval GROUP BY Codigo, Nome;

    Correta. Retorna o resultado exibido na questão.

    c)  INSERT INTO tabval VALUES Codigo, Nome, max (Tamanho) Tamanho, sum(Qtde) Qtde GROUP BY Codigo, Nome;

    Incorreta. Além de ser uma instrução de inserção, a instrução está com sintaxe errada.

    d) SELECT Codigo, Nome, Tamanho, Qtde FROM tabval WHERE Tamanho=max AND QTDE=sum;

    Incorreta. A consulta retornará somente um registro, pois exige que seja especificado um tamanho e uma quantidade na claúsula WHERE.

    e) SELECT Codigo, Nome, count (Tamanho) Tamanho, max (Qtde) Qtde FROM tabval GROUP BY Codigo, Nome, Tamanho, Qtde;

    Incorreta. Esta consulta também retornará todos os registros da tabela, pois a agregação está sendo feita em todos os campos da tabela.


    Portanto, a única alternativa que retorna o resultado esperado é a alternativa B.

  • Apenas para constar, testei o comando com ..max (Tamanho) Tamanho, sum(Qtde) Qtde ... no SQL Server 2012, e realmente funcinou. Pode ter, ou não, os elementos em negrito.

  • http://www.w3ctutorial.com/sql-functions/sql_groupby

  • Existe um erro de de grafia na questão:

    A última linha mostra 004  JPAO  95555555  2,50  , mas deveria ser : 004  JOAO  95555555  2,50

    Trocou a letra O por P. Isso não invalida a questão ???