ACC2000: Come creare una query a campi incrociati con pi¨ campi valore

Traduzione articoli Traduzione articoli
Identificativo articolo: 209143 - Visualizza i prodotti a cui si riferisce l?articolo.
Per la una versione di Microsoft Access 2002 di questo articolo, vedere 304458.
Espandi tutto | Chiudi tutto

Sommario

Richiedente: Richiede la conoscenza dell'interfaccia utente a utente singolo computer.

In una query a campi incrociati di Microsoft Access, Ŕ possibile specificare solo un campo o di calcolo come valore. Spesso, se si desidera visualizzare pi¨ di un valore nella query.

Ad esempio, nell'esempio seguente viene illustrato due colonne di informazioni per ogni societÓ, un conteggio del numero di ordini, e l'ordine di totali per ogni anno:
   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
				
questo tipo di query a volte Ŕ di denominate query pi¨ campo valori.

Nota : ╚ possibile visualizzare una dimostrazione della tecnica viene utilizzata in questo articolo, nel file di esempio Qrysmp00.exe. Per informazioni su come ottenere questo file, vedere il seguente articolo della Microsoft Knowledge Base:
207626ACC2000: Access 2000 esempio query disponibili nell'area Download Microsoft

Informazioni

Per poter creare una query a campi incrociati di pi¨ campi valore, Ŕ necessario creare query a campi incrociati separato per ogni valore che si desidera calcolare. Queste query possono quindi essere aggiunto, utilizzare una query di selezione per visualizzare i risultati desiderati.

Nell'esempio seguente utilizza il database di esempio Northwind.mdb per creare una query che Visualizza risultati simili all'esempio nella sezione "Sommario" di questo articolo. Mostra il numero di vendite e totale per ogni anno per ogni societÓ.
  1. Aprire il database di esempio Northwind.mdb e creare la seguente query a campi incrociati basate su ordini, Dettagli ordini e le tabelle clienti:
       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. Creare la seguente query a campi incrociati basate su ordini e le tabelle clienti:
       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. Creare una query basata su query totale ordini e a campi incrociati Numero ordini. Si utilizzerÓ CompanyName, nonchÚ i campi totale ordini e numero ordini per gli anni i cui risultati si desidera visualizzare. Nell'esempio viene utilizzata l'ultimi due anni di totale ordini e numero ordini in 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
    					
Esecuzione della query di valori multipli comporta in una tabella simile al seguente:
                         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 : ╚ necessario aggiungere il nome della tabella l'espressione se il campo specificato per la concatenazione Ŕ un campo in pi¨ di una delle tabelle unite in join nella query. Ad esempio, nel passaggio 1 modificare:
   Year([OrderDate]) & " " & "Order Total"
				
per:
   Year([Orders].[OrderDate]) & " " & "Order Total"
				
se si aggiunge il nome della tabella alla riga della tabella , si genera un errore di sintassi. Se si lascia il nome della tabella completamente, Ŕ possibile generare un errore di riferimento ambiguo.

Riferimenti

Per ulteriori informazioni sulle query a campi incrociati, scegliere Guida in linea di Access dal menu Guida digitare query a campi incrociati nella casella dell'Assistente di Office o nella ricerca libera e scegliere il pulsante Cerca per visualizzare gli argomenti restituiti.

ProprietÓ

Identificativo articolo: 209143 - Ultima modifica: mercoledý 14 luglio 2004 - Revisione: 1.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Access 2000 Standard Edition
Chiavi:á
kbmt kbhowto KB209143 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 209143
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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