ACC2000: Como criar uma consulta tabela de referência cruzada com campos de múltiplos valores

Traduções de Artigos Traduções de Artigos
Artigo: 209143 - Ver produtos para os quais este artigo se aplica.
Para obter uma versão de Microsoft Access 2002 deste artigo, consulte 304458.
Expandir tudo | Reduzir tudo

Sumário

Principiante: Requer conhecimentos da interface do utilizador em computadores individuais.

Uma consulta de referência cruzada do Microsoft Access, pode especificar apenas um campo ou cálculo como o valor. Muitas vezes, poderá pretender mostrar mais do que um valor na consulta.

Por exemplo, o exemplo seguinte mostra duas colunas de informações por empresa, uma contagem do número de encomendas, e a ordem de totais para cada ano:
   Company Name  1998 Orders  1998 Total  1999 Orders  1999 Total
   --------------------------------------------------------------
   ABC Company   12           $855.00     15           $1010.25
   XYZ Company   1017         $22045.57   1050         $25345.29
				
este tipo de consulta é por vezes, designada por uma consulta de vários campos de valor.

Nota : É possível ver uma demonstração da técnica utilizada neste artigo no ficheiro de exemplo Qrysmp00.exe. Para obter informações sobre como obter este ficheiro de exemplo, consulte o seguinte artigo na base de dados de conhecimento da Microsoft:
207626ACC2000: Access 2000 Sample consultas disponíveis no Centro de transferências

Mais Informação

Para criar uma consulta tabela de referência cruzada de campo de valores múltiplos, terá de criar uma consulta cruzada separada para cada valor que deseja calcular. Estas consultas podem, em seguida, aderir, utilizar uma consulta de selecção para apresentar os resultados pretendidos.

O exemplo seguinte utiliza a base de dados de exemplo Adamastor.mdb para criar uma consulta que apresenta resultados semelhantes ao exemplo na secção "Sumário" deste artigo. Mostra o número de vendas e de totais para cada ano para cada empresa.
  1. Abra a base de dados exemplo Adamastor.mdb e crie a seguinte consulta de referência cruzada com base nas encomendas, detalhes da encomenda e as tabelas de clientes:
       Query: Order Total
       ------------------
       Type: Crosstab Query
       Join: Customers.[CustomerID] <-> Orders.[CustomerID]
       Join: Orders.[OrderID] <-> Order Details.[OrderID]
    
       Field: CompanyName
          Table Name: Customers
          Total: Group By
          Crosstab: Row Heading
    
       Field: Expr1: Year([OrderDate]) & " " & "Order Total"
          Table Name:
          Total: Group By
          Crosstab: Column Heading
    
      Field: Expr2: Sum(CCur([UnitPrice]*[Quantity]*(1-[Discount])))
          Table Name:
          Total: Expression
          Crosstab: Value
    					
  2. Crie a seguinte tabela de referência cruzada consulta com base nas encomendas e as tabelas de clientes:
       Query: Order Count
       ------------------
       Type: Crosstab Query
       Join: Customers.[CustomerID] <-> Orders.[CustomerID]
    
       Field: CompanyName
          Table Name: Customers
          Total:      Group By
          Crosstab:   Row Heading
    
       Field: Expr1: Year([OrderDate]) & " " & "Order Count"
          Table Name:
          Total: Group By
          Crosstab: Column Heading
    
       Field: OrderID
          Table Name: Orders
          Total:      Count
          Crosstab:   Value
    					
  3. Crie uma consulta com base em consultas encomenda total e número de encomendas cruzado. Utilizará NomeDaEmpresa, bem como os campos de total de encomenda e número de encomendas para os anos cujos resultados pretende visualizar. O exemplo seguinte utiliza os últimos dois anos de encomenda total e número de encomendas no Microsoft Access.
       Query: Multiple Values
       ----------------------
       Join: Order Total.[CompanyName] <-> Order Count.[CompanyName]
    
       Field: CompanyName
          Table Name: Order Count
    
       Field: 1997 Order Count
          Table Name: Order Count
    
       Field: 1997 Order Total
          Table Name: Order Total
    
       Field: 1998 Order Count
          Table Name: Order Count
    
       Field: 1998 Order Total
          Table Name: Order Total
    					
Executar a consulta múltiplos valores resulta numa tabela semelhante à seguinte:
                         1997 Order  1997 Order  1998 Order  1998 Order
   Company Name            Count       Total       Count       Total
   --------------------------------------------------------------------
   Alfred's Futterkiste        3      $2,022.50        3      $2,022.50
   Ana Trujillo                2        $799.75        1        $514.10
   Antonio Moreno              5      $5,960.78        1        $660.00
				
Nota : É necessário adicionar o nome da tabela a expressão se o campo especificado para a concatenação é um campo mais do que uma das tabelas associadas na consulta. Por exemplo, no passo 1 alteraria:
   Year([OrderDate]) & " " & "Order Total"
				
para:
   Year([Orders].[OrderDate]) & " " & "Order Total"
				
se adicionar o nome da tabela à linha de tabela , gerar um erro de sintaxe. Se deixar o nome da tabela completamente, gerar um erro de referência ambígua.

Referências

Para obter mais informações sobre consultas de referência cruzada, clique em Ajuda do Microsoft Access no menu de Ajuda escreva consultas de referência cruzada no Assistente do Office ou no Assistente de respostas e, em seguida, clique em Procurar para visualizar os tópicos devolvidos.

Propriedades

Artigo: 209143 - Última revisão: 14 de julho de 2004 - Revisão: 1.1
A informação contida neste artigo aplica-se a:
  • Microsoft Access 2000 Standard Edition
Palavras-chave: 
kbmt kbhowto KB209143 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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 209143

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