Questo articolo spiega come usare un tipo di funzione in Access chiamata funzione di aggregazione per sommare i dati in un set di risultati della query. Spiega anche brevemente come usare altre funzioni di aggregazione, come CONTEGGIO e MEDIA per contare i numeri o calcolare la media dei valori in un set di risultati. Inoltre, questo articolo spiega come usare la riga Totale, una caratteristica in Access che si usa per sommare i dati senza dover modificare la struttura delle query.
Per saperne di più
Informazioni sulle funzioni per sommare i dati
È possibile sommare una colonna di numeri in una query usando un tipo di funzione denominata funzione di aggregazione. Le funzioni di aggregazione eseguono un calcolo su una colonna di dati e restituiscono un singolo valore. Access offre un'ampia gamma di funzioni di aggregazione, tra cui Somma, Conteggio, Media (per le medie di calcolo), Min e Max. Per sommare i dati, aggiungere la funzione Somma alla query, contare i dati usando la funzione Conteggio e così via.
Inoltre, Access offre diversi modi per aggiungere Somma e altre funzioni di aggregazione a una query. È possibile:
-
Aprire la query in visualizzazione Foglio dati e aggiungere una riga Totale. La riga Totale, una caratteristica di Access, consente di usare una funzione di aggregazione in una o più colonne di un set di risultati della query senza dover modificare la struttura della query.
-
Creare una query di totalizzazione. Una query di totalizzazione calcola i subtotali di gruppi di record; Una riga Totale calcola i totali complessivi di una o più colonne (campi) di dati. Ad esempio, se si vuole calcolare il subtotale di tutte le vendite per città o per trimestre, usare una query di totalizzazione per raggruppare i record in base alla categoria desiderata e quindi sommare i dati sulle vendite.
-
Creare una query a campi incrociati. Una query a campi incrociati è un tipo speciale di query che visualizza i risultati in una griglia simile a un foglio di lavoro di Excel. Le query a campi incrociati riepilogano i valori e quindi li raggruppano in base a due serie di dati, una lungo il lato (intestazioni di riga) e l'altra sulla parte superiore (intestazioni di colonna). È ad esempio possibile usare una query a campi incrociati per visualizzare i totali delle vendite realizzati in ogni città negli ultimi tre anni, come illustrato nella tabella seguente:
Città |
2003 |
2004 |
2005 |
---|---|---|---|
Parigi |
254.556 |
372.455 |
467.892 |
Sydney |
478.021 |
372.987 |
276.399 |
Giacarta |
572.997 |
684.374 |
792.571 |
... |
... |
... |
... |
Nota: Benché nelle sezioni delle procedure di questo documento venga posto particolare rilievo all'uso della funzione Somma, tenere presente che nelle righe Totale e nelle query è possibile usare altre funzioni di aggregazione. Per altre informazioni, vedere la sezione Informazioni sulle funzioni di aggregazione più avanti in questo articolo.
Per altre informazioni su come usare le altre funzioni di aggregazione, vedere l'articolo Visualizzare i totali delle colonne in un foglio dati.
Le procedure delle sezioni seguenti illustrano come aggiungere una riga Totale, usare una query di totalizzazione per sommare i dati di più gruppi e usare una query a campi incrociati per calcolare i subtotali tra vari gruppi e intervalli di tempo. Mentre si procede tenere presente che molte funzioni di aggregazione possono essere usate solo con i dati dei campi impostati su uno specifico tipo. Ad esempio, la funzione SOMMA funziona solo con i campi impostati sui dati di tipo numerico, decimale o valuta. Per altre informazioni sui tipi di dati richiesti da ogni funzione, vedere la sezione Informazioni sulle funzioni di aggregazione più avanti in questo articolo.
Per informazioni generali sui tipi di dati, vedere l'articolo Modificare o cambiare il tipo di dati impostato per un campo.
Preparare alcuni dati di esempio
Le sezioni di procedure di questo articolo includono tabelle di dati di esempio. Nei passaggi si usano le tabelle di esempio per spiegare il funzionamento delle funzioni di aggregazione. Se si preferisce, è anche possibile aggiungere le tabelle di esempio in un database nuovo o esistente.
Access offre diversi modi per aggiungere queste tabelle di esempio a un database. È possibile immettere i dati manualmente, copiare ogni tabella in un foglio di calcolo come Excel e quindi importare i fogli di lavoro in Access oppure incollare i dati in un editor di testo come il Blocco note e importarli dai file di testo risultanti.
I passaggi di questa sezione illustrano come immettere manualmente i dati in un foglio dati vuoto e come copiare le tabelle di esempio in un foglio di calcolo e quindi importarle in Access. Per altre informazioni sulla creazione e l'importazione di dati di testo, vedere l'articolo Importare o collegare dati in un file di testo.
Nei passaggi di questo articolo si usano le tabelle seguenti. Usare queste tabelle per creare i dati di esempio:
Tabella Categorie:
Categoria |
---|
Bambole |
Giochi e rompicapo |
Arte e cornici |
Videogiochi |
DVD e film |
Modellini e hobby |
Sport |
Tabella Prodotti:
Nome prodotto |
Prezzo |
Categoria |
---|---|---|
Programmatore - Modellino snodabile |
€ 12,95 |
Bambole |
Divertirsi con C# (gioco da tavola per tutta la famiglia) |
€ 15,85 |
Giochi e rompicapo |
Diagramma per database relazionali |
€ 22,50 |
Arte e cornici |
Processore magico (500 pezzi) |
€ 32,65 |
Giochi e rompicapo |
Access! Il gioco |
€ 22,95 |
Giochi e rompicapo |
I Patiti informatici e i Favolosi |
€ 78,50 |
Videogiochi |
Esercizio per geek di computer! Il DVD! |
€ 14,88 |
DVD e film |
La grande pizza volante |
€ 36,75 |
Sport |
Unità floppy esterna da 5,25" (scala 1/4) |
€ 65,00 |
Modellini e hobby |
Manager - Modellino non snodabile |
€ 78,88 |
Bambole |
Tenebre |
€ 53,33 |
Videogiochi |
Crea la tua tastiera |
€ 77,95 |
Modellini e hobby |
Tabella Ordini:
Data ordine |
Data spedizione |
Città spedizione |
Costi spedizione |
---|---|---|---|
14/11/2005 |
15/11/2005 |
Giacarta |
€ 55,00 |
14/11/2005 |
15/11/2005 |
Sydney |
€ 76,00 |
16/11/2005 |
17/11/2005 |
Sydney |
€ 87,00 |
17/11/2005 |
18/11/2005 |
Giacarta |
€ 43,00 |
17/11/2005 |
18/11/2005 |
Parigi |
€ 105,00 |
17/11/2005 |
18/11/2005 |
Stoccarda |
€ 112,00 |
18/11/2005 |
19/11/2005 |
Vienna |
€ 215,00 |
19/11/2005 |
20/11/2005 |
Miami |
€ 525,00 |
20/11/2005 |
21/11/2005 |
Vienna |
€ 198,00 |
20/11/2005 |
21/11/2005 |
Parigi |
€ 187,00 |
21/11/2005 |
22/11/2005 |
Sydney |
€ 8,100 |
23/11/2005 |
24/11/2005 |
Giacarta |
€ 92,00 |
Tabella Dettagli ordine:
ID ordine |
Nome prodotto |
ID prodotto |
Prezzo unitario |
Quantità |
Sconto |
---|---|---|---|---|---|
1 |
Crea la tua tastiera |
12 |
€ 77,95 |
9 |
5% |
1 |
Manager - Modellino non snodabile |
2 |
€ 78,88 |
4 |
7,5% |
2 |
Esercizio per geek di computer! Il DVD! |
7 |
€ 14,88 |
6 |
4% |
2 |
Processore magico |
4 |
€ 32,65 |
8 |
0 |
2 |
I Patiti informatici e i Favolosi |
6 |
€ 78,50 |
4 |
0 |
3 |
Access! Il gioco |
5 |
€ 22,95 |
5 |
15% |
4 |
Programmatore - Modellino snodabile |
1 |
€ 12,95 |
2 |
6% |
4 |
La grande pizza volante |
8 |
€ 36,75 |
8 |
4% |
5 |
Unità floppy esterna da 5,25" (scala 1/4) |
9 |
€ 65,00 |
4 |
10% |
6 |
Diagramma per database relazionali |
3 |
€ 22,50 |
12 |
6,5% |
7 |
Tenebre |
11 |
€ 53,33 |
6 |
8% |
7 |
Diagramma per database relazionali |
3 |
€ 22,50 |
4 |
9% |
Nota: Tenere presente che in un tipico database una tabella di dettagli ordine conterrà solo un campo ID prodotto e non un campo Nome prodotto. Nella tabella di esempio si usa il campo Nome prodotto per rendere più leggibili i dati.
Immettere manualmente i dati di esempio
-
Nel gruppo Tabelle della scheda Crea fare clic su Tabella.
Access aggiunge una nuova tabella vuota al database.
Nota: Non è necessario eseguire questo passaggio se si apre un nuovo database vuoto, mentre è invece necessario se bisogna aggiungere una tabella al database.
-
Fare doppio clic nella prima cella della riga di intestazione e immettere il nome del campo della tabella di esempio.
Per impostazione predefinita, Access contrassegna i campi vuoti nella riga di intestazione con il testo Aggiungi nuovo campo, come indicato di seguito:
-
Usare i tasti di direzione per passare alla successiva cella di intestazione vuota e digitare il nome del secondo campo (è anche possibile premere TAB o fare doppio clic sulla nuova cella). Ripetere questo passaggio fino a immettere tutti i nomi dei campi.
-
Immettere i dati nella tabella di esempio.
Mentre si immettono i dati, Access imposta automaticamente il relativo tipo per ogni campo. Se non si è esperti di database relazionali, è consigliabile impostare un tipo di dati specifico, ad esempio Numero, Testo o Data/ora per ogni campo delle tabelle. Impostando i tipi di dati ci si assicura un'immissione accurata e si evitano errori, ad esempio l'uso di un numero di telefono in un calcolo. Per queste tabelle di esempio, consentire ad Access di impostare il tipo di dati.
-
Dopo aver immesso tutti i dati, fare clic su Salva.
Scelta rapida da tastiera: premere MAIUSC+F12.
Verrà visualizzata la finestra di dialogo Salva con nome.
-
Nella casella Nome tabella immettere il nome della tabella di esempio e quindi fare clic su OK.
Usare i nome di ogni tabella di esempio perché nelle query delle sezioni illustrative vengono usati questi nomi.
-
Ripetere questi passaggi fino a creare ogni tabella di esempio elencata all'inizio di questa sezione.
Se non si vogliono immettere i dati manualmente, seguire i passaggi successivi per copiarli in un file di foglio di calcolo e quindi importarli in Access.
Creare i fogli di calcolo di esempio
-
Avviare il foglio di calcolo e creare un nuovo file vuoto. Se si usa Excel, viene creata per impostazione predefinita una nuova cartella di lavoro vuota.
-
Copiare la prima tabella di esempio specificata sopra e incollarla nel primo foglio di lavoro, a partire dalla prima cella.
-
Usando la tecnica fornita dal foglio di calcolo, rinominare il foglio di lavoro. Assegnare al foglio di lavoro lo stesso nome della tabella di esempio. Ad esempio, se la tabella di esempio è denominata Categorie, assegnare lo stesso nome al foglio di lavoro.
-
Ripetere i passaggi 2 e 3 per copiare ogni tabella di esempio in un foglio di lavoro vuoto e rinominarlo.
Nota: Può essere necessario aggiungere fogli di lavoro al file del foglio di calcolo. Per informazioni su come eseguire questa operazione, vedere la Guida del foglio di calcolo.
-
Salvare la cartella di lavoro in un percorso facile da ricordare nel computer o nella rete e passare alla serie successiva di passaggi.
Creare tabelle di database dai fogli di lavoro
-
Nel gruppo Importa & collegamento della scheda Dati esterni fare clic su Nuova origine dati > Da file > Excel.
Viene visualizzata la finestra di dialogo Carica dati esterni - Foglio di calcolo di Excel .
-
Fare clic su Sfoglia, aprire il foglio di calcolo creato nei passaggi precedenti e quindi fare clic su OK.
Viene avviata l'Importazione guidata Foglio di calcolo.
-
Per impostazione predefinita, la procedura guidata seleziona il primo foglio della cartella di lavoro (Clienti, se sono stati seguiti i passaggi della sezione precedente) e i dati del foglio vengono visualizzati nella sezione inferiore della pagina. Fare clic su Avanti.
-
Nella pagina successiva della procedura guidata fare clic su Intestazioni di colonne nella prima riga e quindi su Avanti.
-
Facoltativamente, nella pagina successiva usare le caselle di testo e gli elenchi di Opzioni per i campi per cambiare i nomi dei campi e i tipi di dati oppure per omettere alcuni campi dall'operazione di importazione. In caso contrario, fare clic su Avanti.
-
Lasciare selezionata l'opzione Chiave primaria aggiunta automaticamente e fare clic su Avanti.
-
Per impostazione predefinita, Access applica il nome del foglio di lavoro alla nuova tabella. Accettare il nome o immetterne un altro e quindi fare clic su Fine.
-
Ripetere i passaggi da 1 a 7 fino a creare una tabella da ogni foglio di lavoro della cartella di lavoro.
Rinominare i campi di chiave primaria
Nota: Durante l'importazione dei fogli di lavoro, Access aggiunge automaticamente una colonna di chiave primaria a ogni tabella e, per impostazione predefinita, assegna a tale colonna il nome "ID" e la imposta sul tipo di dati Numerazione automatica. I passaggi di questo articolo spiegano come rinominare ogni campo di chiave primaria. In questo modo è possibile identificare chiaramente tutti i campi di una query.
-
Nel riquadro di spostamento fare clic con il pulsante destro del mouse su ogni tabella creata nei passaggi precedenti e scegliere Visualizzazione Struttura.
-
Per ogni tabella, identificare il campo di chiave primaria. Per impostazione predefinita, Access assegna a ogni campo il nome ID.
-
Nella colonna Nome campo di ogni campo di chiave primaria aggiungere il nome della tabella.
Ad esempio, rinominare il campo ID della tabella Categorie in "ID categoria" e il campo della tabella Ordini in "ID ordine". Per la tabella Dettagli ordine, rinominare il campo in "ID dettaglio". Per la tabella Prodotti, rinominare il campo in "ID prodotto".
-
Salvare le modifiche apportate.
Ogni volta che vengono usate in questo articolo, le tabelle di esempio includono il campo di chiave primaria, rinominato come descritto nei passaggi precedenti.
Sommare i dati tramite una riga Totale
Per aggiungere una riga Totale a una query, aprire la query in visualizzazione Foglio dati, aggiungere la riga e quindi selezionare la funzione di aggregazione da usare, ad esempio Somma, Min, Max o Media. I passaggi di questa sezione illustrano come creare una query di selezione di base e aggiungere una riga Totale. Non è necessario usare le tabelle di esempio descritte nella sezione precedente.
Creare una query di selezione di base
-
Nel gruppo Query della scheda Crea fare clic su Struttura query.
-
Fare doppio clic sulla tabella o sulle tabelle da usare nella query.
La tabella o le tabelle selezionate vengono visualizzate come finestre nella sezione superiore della finestra di progettazione query.
-
Fare doppio clic sui campi della tabella da usare nella query.
È possibile includere campi contenenti dati descrittivi, come nomi e descrizioni, ma è necessario includere un campo che contiene dati numerici o di valuta.
Ogni campo compare in una cella della griglia di struttura.
-
Fare clic su Esegui per eseguire la query.
Il set di risultati della query viene aperto in visualizzazione Foglio dati.
-
Facoltativamente, passare in visualizzazione Struttura e modificare la query. A questo scopo, fare clic con il pulsante destro del mouse sulla scheda documento per la query e quindi scegliere Visualizzazione Struttura. È quindi possibile modificare la query in base a specifiche esigenze, aggiungendo o rimuovendo campi di tabella. Per rimuovere un campo, selezionare la colonna nella griglia di struttura e quindi premere CANC.
-
Salvare la query.
Aggiungere una riga Totale
-
Verificare che la query sia aperta in visualizzazione Foglio dati. A questo scopo, fare clic con il pulsante destro del mouse sulla scheda documento per la query e quindi scegliere Visualizzazione Foglio dati.
Oppure
Nel riquadro di spostamento fare doppio clic sulla query. La query viene eseguita e i risultati vengono caricati in un foglio dati.
-
Nel gruppo Record della scheda Home fare clic su Totali.
Nel foglio dati viene visualizzata una nuova riga Totale.
-
Nella riga Totale fare clic sulla cella del campo da sommare e quindi selezionare Somma nell'elenco.
Nascondere una riga Totale
-
Nel gruppo Record della scheda Home fare clic su Totali.
Per altre informazioni sull'uso di una riga Totale, vedere l'articolo Visualizzare totali di colonna in un foglio dati.
Calcolare i totali complessivi con una query
Un totale complessivo è la somma di tutti i valori di una colonna. È possibile calcolare diversi tipi di totali complessivi, tra cui:
-
Un totale complessivo semplice che somma i valori di una singola colonna. È ad esempio possibile calcolare il totale dei costi di spedizione.
-
Un totale complessivo calcolato che somma i valori in più di una colonna. È ad esempio possibile calcolare il totale delle vendite moltiplicando il costo di diversi elementi per il numero di articoli ordinati e quindi calcolando il totale dei valori risultanti.
-
Un totale complessivo che esclude alcuni record. È ad esempio possibile calcolare il totale delle vendite solo per il venerdì precedente.
I passaggi delle sezioni seguenti spiegano come creare ogni tipo di totale complessivo. A questo scopo vengono usate le tabelle Ordini e Dettagli ordine.
Tabella Ordini
ID ordine |
Data ordine |
Data spedizione |
Città spedizione |
Costi spedizione |
---|---|---|---|---|
1 |
14/11/2005 |
15/11/2005 |
Giacarta |
€ 55,00 |
2 |
14/11/2005 |
15/11/2005 |
Sydney |
€ 76,00 |
3 |
16/11/2005 |
17/11/2005 |
Sydney |
€ 87,00 |
4 |
17/11/2005 |
18/11/2005 |
Giacarta |
€ 43,00 |
5 |
17/11/2005 |
18/11/2005 |
Parigi |
€ 105,00 |
6 |
17/11/2005 |
18/11/2005 |
Stoccarda |
€ 112,00 |
7 |
18/11/2005 |
19/11/2005 |
Vienna |
€ 215,00 |
8 |
19/11/2005 |
20/11/2005 |
Miami |
€ 525,00 |
9 |
20/11/2005 |
21/11/2005 |
Vienna |
€ 198,00 |
10 |
20/11/2005 |
21/11/2005 |
Parigi |
€ 187,00 |
11 |
21/11/2005 |
22/11/2005 |
Sydney |
€ 8,100 |
12 |
23/11/2005 |
24/11/2005 |
Giacarta |
€ 92,00 |
Tabella Dettagli ordine
ID dettagli |
ID ordine |
Nome prodotto |
ID prodotto |
Prezzo unitario |
Quantità |
Sconto |
---|---|---|---|---|---|---|
1 |
1 |
Crea la tua tastiera |
12 |
€ 77,95 |
9 |
0,05 |
2 |
1 |
Manager - Modellino non snodabile |
2 |
€ 78,88 |
4 |
0,075 |
3 |
2 |
Esercizio per geek di computer! Il DVD! |
7 |
€ 14,88 |
6 |
0,04 |
4 |
2 |
Processore magico |
4 |
€ 32,65 |
8 |
0,00 |
5 |
2 |
I Patiti informatici e i Favolosi |
6 |
€ 78,50 |
4 |
0,00 |
6 |
3 |
Access! Il gioco |
5 |
€ 22,95 |
5 |
0,15 |
7 |
4 |
Programmatore - Modellino snodabile |
1 |
€ 12,95 |
2 |
0,06 |
8 |
4 |
La grande pizza volante |
8 |
€ 36,75 |
8 |
0,04 |
9 |
5 |
Unità floppy esterna da 5,25" (scala 1/4) |
9 |
€ 65,00 |
4 |
0,10 |
10 |
6 |
Diagramma per database relazionali |
3 |
€ 22,50 |
12 |
0,065 |
11 |
7 |
Tenebre |
11 |
€ 53,33 |
6 |
0,08 |
12 |
7 |
Diagramma per database relazionali |
3 |
€ 22,50 |
4 |
0,09 |
Calcolare un totale complessivo semplice
-
Nel gruppo Query della scheda Crea fare clic su Struttura query.
-
Fare doppio clic sulla tabella da usare nella query.
Se si usano i dati di esempio, fare doppio clic sulla tabella Ordini.
La tabella viene visualizzata in una finestra nella sezione superiore della finestra di progettazione query.
-
Fare doppio clic sul campo da sommare. Assicurarsi che sia impostato sul tipo di dati Numero o Valuta. Se si prova a sommare i valori di campi non numerici, ad esempio un campo di testo, Access visualizza il messaggio di errore Tipi di dati non corrispondenti nell'espressione criterio quando si tenta di eseguire la query.
Se si usano i dati di esempio, fare doppio clic sulla tabella Costi spedizione.
È possibile aggiungere altri campi numerici alla griglia se si vogliono calcolare i totali complessivi di questi campi. Una query di totalizzazione può calcolare i totali complessivi di più di una colonna.
-
Nel gruppo Mostra/Nascondi della scheda Struttura query fare clic su Totali.
Nella griglia di struttura viene visualizzata la riga Totale e nella cella della colonna Costi spedizione l'opzione Raggruppa per.
-
Sostituire il valore della cella nella riga Totale con Somma.
-
Fare clic su Esegui per eseguire la query e visualizzare i risultati in visualizzazione Foglio dati.
Suggerimento: Si noti che Access aggiunge "SommaDi" all'inizio del nome del campo da sommare. Per sostituire l'intestazione della colonna con un nome più significativo, ad esempio Totale spedizione, tornare in visualizzazione Struttura e fare clic nella riga Campo della colonna Costi spedizione nella griglia di struttura. Posizionare il cursore accanto a Costi spedizione e digitare le parole Totale spedizione seguite da due punti, in questo modo: Totale spedizione: Costi spedizione.
-
Facoltativamente, salvare la query e chiuderla.
Calcolare un totale complessivo che esclude alcuni record
-
Nel gruppo Query della scheda Crea fare clic su Struttura query.
-
Fare doppio clic sulla tabella Ordini e sulla tabella Dettagli ordine.
-
Aggiungere il campo Data ordine della tabella Ordini alla prima colonna nella griglia di struttura della query.
-
Nella riga Criteri della prima riga digitare Date() -1. Questa espressione esclude i record della data corrente dal totale calcolato.
-
Creare quindi la colonna che calcola l'importo delle vendite per ogni transazione. Nella riga Campo della seconda colonna della griglia digitare l'espressione seguente:
Totale valore vendite: (1-[Dettagli ordine].[Sconto]/100)*([Dettagli ordine].[Prezzo unitario]*[Dettagli ordine].[Quantità])
Assicurarsi che l'espressione faccia riferimento ai campi impostati sui tipi di dati Numero o Valuta. Se l'espressione fa riferimento a campi impostati su altri tipi di dati, Access visualizza il messaggio Tipi di dati non corrispondenti nell'espressione criterio quando si prova a eseguire la query.
-
Nel gruppo Mostra/Nascondi della scheda Struttura query fare clic su Totali.
Nella griglia di struttura viene visualizzata la riga Totale e nella prima e nella seconda colonna l'opzione Raggruppa per.
-
Nella seconda colonna sostituire il valore della cella nella riga Totale con Somma. La funzione Somma aggiunge le singole cifre sulle vendite.
-
Fare clic su Esegui per eseguire la query e visualizzare i risultati in visualizzazione Foglio dati.
-
Salvare la query come Vendite giornaliere.
Nota: La volta successiva che si apre la query in visualizzazione Struttura, si potrebbe notare una leggera variazione nei valori specificati nelle righe Campo e Totale della colonna Totale valore vendite. L'espressione compare racchiusa all'interno della funzione Somma e la riga Totale visualizza Espressione invece di Somma.
Se ad esempio si usano i dati di esempio e si crea la query come illustrato nei passaggi precedenti, si ottiene:
Totale valore vendite: Somma((1-[Dettagli ordine].Sconto/100)*([Dettagli ordine].PrezzoUnitario*[Dettagli ordine].Quantità))
Calcolare i totali complessivi con una query di totalizzazione
I passaggi di questa sezione spiegano come creare una query di totalizzazione che calcola i subtotali di gruppi di dati. Mentre si procede tenere presente che, per impostazione predefinita, una query di totalizzazione può includere solo il campo o i campi che contengono i dati di gruppo, ad esempio un campo "categorie", e il campo che contiene i dati da sommare, ad esempio il campo "vendite". Le query di totalizzazione non possono includere altri campi che descrivono gli elementi di una categoria. Per vedere questi dati descrittivi, è possibile creare una seconda query di selezione che combina i campi della query di totalizzazione con gli altri campi di dati.
I passaggi di questa sezione spiegano come creare le query di totalizzazione e di selezione necessarie per identificare il totale delle vendite per ogni prodotto. Si presuppone che vengano usate queste tabelle di esempio:
Tabella Prodotti
ID prodotto |
Nome prodotto |
Prezzo |
Categoria |
---|---|---|---|
1 |
Programmatore - Modellino snodabile |
€ 12,95 |
Bambole |
2 |
Divertirsi con C# (gioco da tavola per tutta la famiglia) |
€ 15,85 |
Giochi e rompicapo |
3 |
Diagramma per database relazionali |
€ 22,50 |
Arte e cornici |
4 |
Processore magico (500 pezzi) |
€ 32,65 |
Arte e cornici |
5 |
Access! Il gioco |
€ 22,95 |
Giochi e rompicapo |
6 |
I Patiti informatici e i Favolosi |
€ 78,50 |
Videogiochi |
7 |
Esercizio per geek di computer! Il DVD! |
€ 14,88 |
DVD e film |
8 |
La grande pizza volante |
€ 36,75 |
Sport |
9 |
Unità floppy esterna da 5,25" (scala 1/4) |
€ 65,00 |
Modellini e hobby |
10 |
Manager - Modellino non snodabile |
€ 78,88 |
Bambole |
11 |
Tenebre |
€ 53,33 |
Videogiochi |
12 |
Crea la tua tastiera |
€ 77,95 |
Modellini e hobby |
Tabella Dettagli ordine
ID dettagli |
ID ordine |
Nome prodotto |
ID prodotto |
Prezzo unitario |
Quantità |
Sconto |
---|---|---|---|---|---|---|
1 |
1 |
Crea la tua tastiera |
12 |
€ 77,95 |
9 |
5% |
2 |
1 |
Manager - Modellino non snodabile |
2 |
€ 78,88 |
4 |
7,5% |
3 |
2 |
Esercizio per geek di computer! Il DVD! |
7 |
€ 14,88 |
6 |
4% |
4 |
2 |
Processore magico |
4 |
€ 32,65 |
8 |
0 |
5 |
2 |
I Patiti informatici e i Favolosi |
6 |
€ 78,50 |
4 |
0 |
6 |
3 |
Access! Il gioco |
5 |
€ 22,95 |
5 |
15% |
7 |
4 |
Programmatore - Modellino snodabile |
1 |
€ 12,95 |
2 |
6% |
8 |
4 |
La grande pizza volante |
8 |
€ 36,75 |
8 |
4% |
9 |
5 |
Unità floppy esterna da 5,25" (scala 1/4) |
9 |
€ 65,00 |
4 |
10% |
10 |
6 |
Diagramma per database relazionali |
3 |
€ 22,50 |
12 |
6,5% |
11 |
7 |
Tenebre |
11 |
€ 53,33 |
6 |
8% |
12 |
7 |
Diagramma per database relazionali |
3 |
€ 22,50 |
4 |
9% |
I passaggi seguenti presuppongono che esista una relazione uno-a-molti tra i campi ID prodotto della tabella Ordini e la tabella Dettagli ordine, con la tabella Ordini sul lato "uno" della relazione.
Creare una query di totalizzazione
-
Nel gruppo Query della scheda Crea fare clic su Struttura query.
-
Selezionare le tabelle da usare e quindi fare clic su Aggiungi.
Ogni tabella viene visualizzata in una finestra nella sezione superiore della finestra di progettazione query.
Se si usano le tabelle di esempio descritte in precedenza, aggiungere le tabelle Prodotti e Dettagli ordine.
-
Fare doppio clic sui campi della tabella da usare nella query.
Di norma, si aggiunge solo il campo gruppo e il campo valore alla query. È tuttavia possibile usare un calcolo invece di un campo valore, come illustrato nei passaggi seguenti.
-
Aggiungere il campo Categoria della tabella Prodotti alla griglia di struttura.
-
Creare la colonna che calcola l'importo delle vendite per ogni transazione digitando l'espressione seguente nella seconda colonna della griglia:
Totale valore vendite: (1-[Dettagli ordine].[Sconto]/100)*([Dettagli ordine].[Prezzo unitario]*[Dettagli ordine].[Quantità])
Assicurarsi che i dati dei campi a cui si fa riferimento nell'espressione siano di tipo Numero o Valuta. Se si fa riferimento a campi di altri tipi di dati, Access visualizza il messaggio Tipi di dati non corrispondenti nell'espressione criterio quando si prova a passare in visualizzazione Foglio dati.
-
Nel gruppo Mostra/Nascondi della scheda Struttura query fare clic su Totali.
Nella griglia di struttura viene visualizzata la riga Totale e nella prima e nella seconda colonna di questa riga l'opzione Raggruppa per.
-
Nella seconda colonna sostituire il valore della riga Totale con Somma. La funzione Somma aggiunge le singole cifre sulle vendite.
-
Fare clic su Esegui per eseguire la query e visualizzare i risultati in visualizzazione Foglio dati.
-
Mantenere aperta la query per usarla nella sezione successiva.
Usare criteri con una query di totalizzazione
La query creata nella sezione precedente include tutti i record delle tabelle sottostanti. Non esclude alcun ordine quando calcola i totali e visualizza i totali per tutte le categorie.
Se è necessario escludere alcuni record, è possibile aggiungere criteri alla query. È ad esempio possibile ignorare le transazioni di importo inferiore a € 100 o calcolare i totali solo per alcune categorie di prodotti. I passaggi di questa sezione spiegano come usare tre tipi di criteri:
-
Criteri che ignorano determinati gruppi per il calcolo dei totali. Ad esempio, verranno calcolati i totali solo per le categorie Videogiochi, Arte e cornici e Sport.
-
Criteri che nascondono determinati totali dopo averli calcolati. È ad esempio possibile visualizzare solo i totali maggiori di € 150.000.
-
Criteri che escludono singoli record dal totale. È ad esempio possibile escludere singole transazioni di vendita in cui il valore (Prezzo unitario * Quantità) scende al di sotto di € 100.
I passaggi seguenti illustrano come aggiungere i criteri uno alla volta e descrivono l'impatto sul risultato della query.
Aggiungere criteri alla query
-
Aprire la query della sezione precedente in visualizzazione Struttura. A questo scopo, fare clic con il pulsante destro del mouse sulla scheda documento per la query e quindi scegliere Visualizzazione Struttura.
Oppure
Nel riquadro di spostamento fare clic con il pulsante destro del mouse sulla query e quindi scegliere Visualizzazione Struttura.
-
Nella riga Criteri della colonna ID categoria digitare =Bambole Or Sport O Arte e cornici.
-
Fare clic su Esegui per eseguire la query e visualizzare i risultati in visualizzazione Foglio dati.
-
Tornare in visualizzazione Struttura e, nella riga Criteri della colonna Totale valore vendite, digitare >100.
-
Eseguire la query per vedere i risultati, quindi tornare in visualizzazione Struttura.
-
Ora aggiungere i criteri per escludere singole transazioni di vendita di importo inferiore a € 100. A questo scopo, è necessario aggiungere un'altra colonna.
Nota: Non è infatti possibile specificare il terzo criterio nella colonna Totale valore vendite. I criteri specificati in questa colonna si applicano al valore totale, non ai singoli valori.
-
Copiare l'espressione della seconda colonna nella terza colonna.
-
Nella riga Totale della nuova colonna selezionare Dove e quindi, nella riga Criteri, digitare >20.
-
Eseguire la query per vedere i risultati, quindi salvare la query.
Nota: La volta successiva che si apre la query in visualizzazione Struttura, si potrebbero notare leggere variazioni nella griglia di struttura. Nella seconda colonna l'espressione della riga Campo compare racchiusa all'interno della funzione Somma e il valore della riga Totale visualizza Espressione invece di Somma.
Totale valore vendite: Somma((1-[Dettagli ordine].Sconto/100)*([Dettagli ordine].PrezzoUnitario*[Dettagli ord ine].Quantità))
Verrà inoltre visualizzata una quarta colonna. Questa colonna è la copia della seconda colonna, ma i criteri specificati nella seconda colonna vengono in realtà visualizzati come parte della nuova colonna.
-
Sommare i dati tra più gruppi con una query a campi incrociati
Una query a campi incrociati è un tipo speciale di query che visualizza i risultati in una griglia simile a un foglio di lavoro di Excel. Le query a campi incrociati riepilogano i valori e quindi li raggruppano in base a due serie di dati, una lungo il lato (intestazioni di riga) e l'altra sulla parte superiore (intestazioni di colonna). La figura seguente illustra parte del set di risultati della query a campi incrociati di esempio:
Mentre si procede tenere presente che una query a campi incrociati non popola sempre tutti i campi del set di risultati, perché le tabelle usate nella query non sempre contengono valori per ogni possibile punto dati.
Quando si crea un query a campi incrociati, in genere si includono i dati di più tabelle e si usano sempre tre tipi di dati, ossia quelli per le intestazioni di riga, quelli per le intestazioni di colonna e i valori da sommare o da calcolare in altro modo.
Nei passaggi di questa sezione si usano le tabelle seguenti:
Tabella Ordini
Data ordine |
Data spedizione |
Città spedizione |
Costi spedizione |
---|---|---|---|
14/11/2005 |
15/11/2005 |
Giacarta |
€ 55,00 |
14/11/2005 |
15/11/2005 |
Sydney |
€ 76,00 |
16/11/2005 |
17/11/2005 |
Sydney |
€ 87,00 |
17/11/2005 |
18/11/2005 |
Giacarta |
€ 43,00 |
17/11/2005 |
18/11/2005 |
Parigi |
€ 105,00 |
17/11/2005 |
18/11/2005 |
Stoccarda |
€ 112,00 |
18/11/2005 |
19/11/2005 |
Vienna |
€ 215,00 |
19/11/2005 |
20/11/2005 |
Miami |
€ 525,00 |
20/11/2005 |
21/11/2005 |
Vienna |
€ 198,00 |
20/11/2005 |
21/11/2005 |
Parigi |
€ 187,00 |
21/11/2005 |
22/11/2005 |
Sydney |
€ 8,100 |
23/11/2005 |
24/11/2005 |
Giacarta |
€ 92,00 |
Tabella Dettagli ordine
ID ordine |
Nome prodotto |
ID prodotto |
Prezzo unitario |
Quantità |
Sconto |
---|---|---|---|---|---|
1 |
Crea la tua tastiera |
12 |
€ 77,95 |
9 |
5% |
1 |
Manager - Modellino non snodabile |
2 |
€ 78,88 |
4 |
7,5% |
2 |
Esercizio per geek di computer! Il DVD! |
7 |
€ 14,88 |
6 |
4% |
2 |
Processore magico |
4 |
€ 32,65 |
8 |
0 |
2 |
I Patiti informatici e i Favolosi |
6 |
€ 78,50 |
4 |
0 |
3 |
Access! Il gioco |
5 |
€ 22,95 |
5 |
15% |
4 |
Programmatore - Modellino snodabile |
1 |
€ 12,95 |
2 |
6% |
4 |
La grande pizza volante |
8 |
€ 36,75 |
8 |
4% |
5 |
Unità floppy esterna da 5,25" (scala 1/4) |
9 |
€ 65,00 |
4 |
10% |
6 |
Diagramma per database relazionali |
3 |
€ 22,50 |
12 |
6,5% |
7 |
Tenebre |
11 |
€ 53,33 |
6 |
8% |
7 |
Diagramma per database relazionali |
3 |
€ 22,50 |
4 |
9% |
I passaggi seguenti spiegano come creare una query a campi incrociati che raggruppa il totale delle vendite per città. La query usa due espressioni per restituire una data formattata e un totale delle vendite.
Creare una query a campi incrociati
-
Nel gruppo Query della scheda Crea fare clic su Struttura query.
-
Fare doppio clic sulle tabelle da usare nella query.
Ogni tabella viene visualizzata in una finestra nella sezione superiore della finestra di progettazione query.
Se si usano le tabelle di esempio, fare doppio clic sulla tabella Ordini e sulla tabella Dettagli ordine.
-
Fare doppio clic sui campi da usare nella query.
Ogni nome di campo viene visualizzato nella cella vuota della riga Campo della griglia di struttura.
Se si usano le tabelle di esempio, aggiungere i campi Città spedizione e Data spedizione della tabella Ordini.
-
Nella cella vuota successiva della riga Campo copiare e incollare o digitare l'espressione seguente: Totale vendite: Somma(CCur([Dettagli ordine].[Prezzo unitario]*[Quantità]*(1-[Sconto])/100)*100)
-
Nel gruppo Tipo di query della scheda Struttura query fare clic su A campi incrociati.
Nella griglia di struttura vengono visualizzate le righe Totale e A campi incrociati.
-
Fare clic sulla cella della riga Totale nel campo Città e selezionare Raggruppa per. Eseguire la stessa operazione nel campo Data spedizione. Sostituire il valore della cella Totale del campo Totale vendite con Espressione.
-
Nella riga A campi incrociati impostare la cella del campo Città su Intestazione riga, il campo Data spedizione su Intestazione colonna e il campo Totale vendite su Valore.
-
Nel gruppo Risultati della scheda Struttura query fare clic su Esegui.
I risultati della query vengono aperti in visualizzazione Foglio dati.
Informazioni sulle funzioni di aggregazione
Questa tabella elenca e descrive le funzioni di aggregazione disponibili nella riga Totale e nelle query di Access. Tenere presente che Access offre più funzioni di aggregazione per le query che non per la riga Totale.
Funzione |
Descrizione |
Tipi di dati supportati |
---|---|---|
Media |
Calcola il valore medio per una colonna. La colonna deve contenere dati numerici, di valuta o di data/ora. La funzione ignora i valori Null. |
Numero, valuta, data/ora |
Conteggio |
Conta il numero di elementi contenuti in una colonna. |
Tutti i tipi di dati, ad eccezione dei dati scalari ripetuti complessi, come una colonna di elenchi multivalore. Per altre informazioni sugli elenchi multivalore, vedere l'articolo Creare o eliminare un campo multivalore. |
Massimo |
Restituisce l'elemento con il valore più alto. Per i dati di testo, il valore più alto è l'ultimo valore alfabetico. Access ignora la distinzione tra maiuscole e minuscole. La funzione ignora i valori Null. |
Numero, valuta, data/ora |
Minimo |
Restituisce l'elemento con il valore più basso. Per i dati di testo, il valore più basso è il primo valore alfabetico. Access ignora la distinzione tra maiuscole e minuscole. La funzione ignora i valori Null. |
Numero, valuta, data/ora |
Deviazione standard |
Misura l'entità della deviazione dei valori rispetto a un valore medio. Per altre informazioni sull'uso di questa funzione, vedere l'articolo Visualizzare totali di colonna in un foglio dati. |
Numero, valuta |
Somma |
Aggiunge gli elementi di una colonna. Supporta solo dati numerici e di valuta. |
Numero, valuta |
Varianza |
Misura la varianza statistica di tutti i valori della colonna. È possibile usare questa funzione solo con dati numerici o di valuta. Se la tabella contiene meno di due righe, Access restituisce un valore Null. Per altre informazioni sulle funzioni di varianza, vedere l'articolo Visualizzare totali di colonna in un foglio dati. |
Numero, valuta |