SóProvas


ID
704233
Banca
CESPE / CEBRASPE
Órgão
MPE-PI
Ano
2012
Provas
Disciplina
Banco de Dados
Assuntos

A respeito de fundamentos de banco de dados e linguagens de definição e manipulação de dados em SGBDs relacionais, julgue os itens a seguir.


Os atributos utilizados para a classificação do resultado pela cláusula order by não necessitam estar presentes na cláusula select da consulta

Alternativas
Comentários
  • Todos, nao. Mas pelo menos um atributo de SELECT deve estar presente na clausula ORDER BY.

    Por exemplo:

    SELECT store_name, Sales, Date
    FROM Store_Information
    ORDER BY
    Sales DESC

    ou

    SELECT store_name, Sales, Date
    FROM Store_Information
    ORDER BY
    Date DESC

    ou

    SELECT store_name, Sales, Date
    FROM Store_Information
    ORDER BY
    store_name DESC


  • Eu entendi a questão da seguinte forma:
    Os atributos utilizados para a classificação do resultado pela cláusula order by não necessitam estar presentes na cláusula select da consulta
    Os atributos do order by não precisam estar na cláusula select
    Ou seja
    O seguinte select seria permitido:

    SELECT marca, ano FROM carros WHERE modelo > 2009 ORDER BY modelo;

    Ou seja, apesar de não estar na cláusula SELECT está na cláusula ORDER BY.
  • A intenção dessa questão foi confundir o uso de funções de agregação com a cláusula GROUP BY:

    Na construção de consultas usando grupos, é importante garantir que os atributos que aparecem na declaração do select sem estar associados as funções de agregação estejam presentes na cláusula group by. (Sylberchatz)

  • A ordenação pode ser definida com o comando ORDER BY. Assim como no comando WHERE, o campo de ordenação não precisa estar listado como campo de visualização. Veja o exemplo da Listagem 2.

    Listagem 2. Exemplo order by A utilização da palavra DESC garante a ordenação invertida: