ACC2000: Como classificar registros em uma consulta

Traduções deste artigo Traduções deste artigo
ID do artigo: 208946 - Exibir os produtos aos quais esse artigo se aplica.
Avançadas: Requer especialista de codificação, interoperabilidade e habilidades de multiusuário.

Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo possui três exemplos que mostram como classificar registros em uma consulta. O primeiro exemplo classifica os registros de uma tabela. O segundo exemplo classifica os resultados de uma consulta de totais. O terceiro exemplo demonstra um método alternativo de tratamento vincula na classificação.

Todos os exemplos neste artigo exigem um campo que tem um valor que pode ser avaliado usando tanto o Maior que (>) ou o menor que operador (<) e uma subconsulta para contar o número de registros que são maiores ou menores do que o registro atual.

Observação : você pode ver uma demonstração da técnica é usada neste artigo no arquivo de exemplo Qrysmp00.exe. Para obter informações sobre como obter esse arquivo de exemplo, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:
207626ACC2000: Access 2000 Sample consultas disponíveis no Centro de download

Mais Informações

No exemplo 1 e 2 do exemplo abaixo, após um empate na classificação de registros são recebe o mesmo número de classificação que eles seriam recebidos estava não empate. A tabela a seguir demonstra um resultado de exemplo com um empate na classificação:
Recolher esta tabelaExpandir esta tabela
VendedorVendasClassificação
Peterson$ 80001
Wakita$ 70002
Akerley$ 70002
Reston$ 60004
No exemplo 3 abaixo, uma segunda consulta, que possui uma cláusula DISTINCT, é usada para retornar uma lista exclusiva de classificação menos de que o registro atual. A tabela a seguir, usando os mesmos registros como a tabela acima, demonstra os resultados deste método:
Recolher esta tabelaExpandir esta tabela
VendedorVendasClassificação
Peterson$ 80001
Wakita$ 70002
Akerley$ 70002
Reston$ 60003

Exemplo 1

Este exemplo retorna os resultados mostram a ordem em que foram contratados a funcionários.

cuidado : se você seguir as etapas neste exemplo, você modificar o banco de dados de exemplo Northwind.mdb. Convém fazer o backup do arquivo Northwind.mdb e seguir essas etapas numa cópia do banco de dados.

  1. Abra o Northwind.mdb de exemplo e crie uma nova consulta com base na tabela Funcionários.
  2. Se a folha de propriedades não for exibida, clique botão Propriedades na barra de ferramentas.
  3. Clique na barra de título da lista de campo de funcionários e defina propriedade da lista de campos para Emp1.
  4. Arraste os campos LastName e HireDate da lista de campos à grade da consulta.
  5. Na linha classificação da coluna HireDate, selecione crescente.
  6. Na linha campo da terceira coluna, digite a expressão a seguir:
       Seniority: (Select Count(*) from Employees Where [HireDate] < _
       [Emp1].[HireDate];)
  7. Execute a consulta. Observe que os registros retornados são classificados em seqüência começando de 0. A subconsulta retorna o número de funcionários contratados antes do funcionário atual. Para classificar os registros começando com 1, use a seguinte expressão na etapa 6 acima:
       Seniority: (Select Count(*) from Employees Where [HireDate] < _ 
       [Emp1].[HireDate]+1;)
  8. Para ver os resultados de uma ligação na classificação, altere a data de contratação de um funcionário para corresponder à outra (na tabela Funcionários).

Exemplo 2

Este exemplo retorna resultados classificar categorias pelo número de produtos de cada categoria.

cuidado : se você seguir as etapas neste exemplo, você modificar o banco de dados de exemplo Northwind.mdb. Convém fazer o backup do arquivo Northwind.mdb e seguir essas etapas numa cópia do banco de dados.

  1. Crie uma nova consulta baseada na tabela Produtos.
  2. Arraste os campos categoria e ProductID da lista de campos à grade da consulta.
  3. Clique no botão totais na barra de ferramentas.
  4. Na linha total da coluna CategoryID, selecione Agrupar por. Na linha total da coluna ProductID, selecione contar. Salve a consulta como ProductCount.
  5. Crie uma nova consulta com base na consulta ProductCount.
  6. Defina propriedade do alias da lista de campo ProductCount Prod1.
  7. Arraste os dois campos da lista de campos à grade da consulta e selecione decrescente na linha classificação da coluna CountofProductID.
  8. Na linha campo da terceira coluna, digite a expressão a seguir.
       Ranking: (Select Count(*) from ProductCount Where [CountofProductID] > _
       [Prod1].[CountofProductID]) + 1
  9. Execute a consulta.

Exemplo 3

Este exemplo demonstra um método alternativo de tratamento vincula na classificação.

cuidado : se você seguir as etapas neste exemplo, você modificar o banco de dados de exemplo Northwind.mdb. Convém fazer o backup do arquivo Northwind.mdb e seguir essas etapas numa cópia do banco de dados.

  1. Repita as etapas de 1 a 8 no exemplo 2. Após a etapa 8, salve a consulta como CatRanking. Executar a consulta e observe o empate o número de produtos entre as categorias de bebidas, Frutos do mar e Condimentos.
  2. Crie uma nova consulta baseada na tabela Produtos. Arraste os campos categoria e ProductID da lista de campos à grade da consulta.
  3. Clique no botão totais na barra de ferramentas.
  4. Na linha total da coluna CategoryID, selecione Agrupar por. Na linha total da coluna ProductID, selecione contar.
  5. Na linha Mostrar da coluna CategoryID, desmarque a caixa de seleção.
  6. Defina a propriedade UniqueValues da consulta como Sim .
  7. Execute a consulta. Observe que a consulta retorna uma lista dos seis diferentes totais dos pedidos feitos. Salve a consulta como DistinctCount.
  8. Exiba a consulta CatRanking no modo de design. Substituir a expressão na linha campo da terceira coluna com a expressão a seguir e, em seguida, execute a consulta.
       Ranking: (Select Count(*) from DistinctCount Where _ 
       [CountofProductID] > Prod1.[CountofProductID]) + 1
    Observe que os registros após um empate na classificação recebem o mesmo número de classificação eles seriam recebidos tinha sido não empate.

Propriedades

ID do artigo: 208946 - Última revisão: terça-feira, 20 de novembro de 2001 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft Access 2000 Standard Edition
Palavras-chave: 
kbmt kbinfo KB208946 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 208946

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com