Ako vytvoriť krížový dotaz s viacero hodnotových polí

Preklady článku Preklady článku
ID článku: 304458 - Zobraziť produkty, ktorých sa tento článok týka.
Mierna: Vyžaduje základné makro, kódovanie a interoperabilitu zručnosti.

Tento článok sa uplatňuje iba na databázu programu Microsoft Access (.accdb a .mdb). Microsoft Access 2000 verziu tohto článku, pozri 209143.
Microsoft Access 97 verziu tohto článku, pozri 109939.
Rozbaliť všetko | Zbaliť všetko

SUHRN

V Microsoft Access Krížový dotaz, môžete zadať iba jedného poľa alebo výpočet ako hodnota. Možno budete chcieť zobraziť viac ako jednu hodnotu v dotaze.

Nasledujúci príklad ilustruje dvoch stĺpcoch informácií každú spoločnosť, gróf z počtu objednávok a súhrny objednávok pre každý rok:
   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
				
Tento typ dotazu sa niekedy nazýva viacerých pole s hodnotou dotaz.

DALSIE INFORMACIE

Ak chcete vytvoriť krížový dotaz viaceré hodnoty poľa, musíte Vytvorenie samostatných krížového dotazu pre každú hodnotu chcete vypočítať. Ste potom môžete použiť výberový dotaz pripojiť tieto Krížové dotazy na zobrazenie výsledky, ktoré chcete.

Nasledujúci príklad využíva vzorky databázy databázu Northwind.mdb vytvoriť dotaz, ktorý zobrazuje výsledky obdobné Príklad v časti „Zhrnutie ” skôr v tomto článku. To ukazuje počet predaja a súčtu pre každý rok pre každú spoločnosť.
  1. Otvorte ukážkovú databázu Northwind.mdb a potom vytvorte po krížového dotazu, ktorý vychádza z objednávok, Podrobnosti objednávky, a Tabuľky Zákazníci:
       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. Uložiť tento dotaz ako Objednávka Celkom.
  3. Vytvoriť nasledujúce Krížový dotaz, ktorý je založený na Príkazy a tabuľky Zákazníci:
       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
    					
  4. Uložiť tento dotaz ako Objednávka Count.
  5. Vytvoriť dotaz, ktorý je založený na poradí celkovej a Poradie Count Krížové dotazy. CompanyName, celkové poradie a poradie Počet polí pre roky ktorých výsledky, ktoré chcete zobraziť. Nasledujúce príklad používa posledné dva roky poradí celkovej a poradie počítať v programe Microsoft Prístup.
       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
    					
  6. Keď spustíte dotaz viaceré hodnoty, zobrazí sa Tabuľka, ktorá vyzerá podobne ako nasledujúca tabuľka:
                             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
    					
    POZNÁMKA: Musíte pridať názov tabuľky výraz ak oblasti, je určený pre zreťazenie je pole počas viac ako jedného tabuliek že je pripojený v dotaze. Napríklad v kroku 1 by ste zmenili:
       Year([OrderDate]) & " " & "Order Total"
    					
    na:
       Year([Orders].[OrderDate]) & " " & "Order Total"
    					
    Ak pridáte názov tabuľky k Tabuľka riadok, môžete vygenerovať Syntaktická chyba. Ak ponecháte názov tabuľky úplne, môžete vygenerovať chybu jednoznačný odkaz.

ODKAZY

Pre Ďalšie informácie o Krížové dotazy, kliknite na tlačidlo Pomocník programu Microsoft Access na Pomocník ponuka, typu Krížové dotazy v kancelárii Asistent alebo Sprievodca odpoveďami a potom kliknite na tlačidlo Vyhľadávanie zobrazte príslušné témy.
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Vlastnosti

ID článku: 304458 - Posledná kontrola: 31. októbra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft Office Access 2007
  • Microsoft Access 2002 Standard Edition
Kľúčové slová: 
kbquery kbhowto kbmt KB304458 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:304458

Odošlite odozvu

 

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