Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
si applica a:SQL Server
Se si desidera creare subtotali o visualizzare altre informazioni di riepilogo per i sottoinsiemi di una tabella, si creano gruppi utilizzando una query di aggregazione. Ogni gruppo riepiloga i dati per tutte le righe della tabella con lo stesso valore.
Ad esempio, è possibile visualizzare il prezzo medio di un libro nella tabella titles
, ma suddividere i risultati in base all'editore. A tale scopo, raggruppare la query in base al server di pubblicazione, ad esempio pub_id
. L'output della query risultante potrebbe essere simile al seguente:
Quando si raggruppano i dati, è possibile visualizzare solo dati di riepilogo o raggruppati, ad esempio:
Valori delle colonne raggruppate (quelle visualizzate nella clausola GROUP BY). Nell'esempio precedente
pub_id
è la colonna raggruppata.Valori prodotti da funzioni di aggregazione come SUM( ) e AVG( ). Nell'esempio precedente la seconda colonna viene prodotta usando la funzione AVG( ) con la colonna
price
.
Non è possibile visualizzare valori da singole righe. Ad esempio, se si raggruppa solo in base al server di pubblicazione, non è possibile visualizzare anche singoli titoli nella query. Pertanto, se si aggiungono colonne all'output della query, il Query and View Designer le aggiunge automaticamente alla clausola GROUP BY dell'istruzione nel riquadro SQL. Se invece si desidera aggregare una colonna, è possibile specificare una funzione di aggregazione per tale colonna.
Se si raggruppano in base a più colonne, ogni gruppo nella query mostra i valori di aggregazione per tutte le colonne di raggruppamento.
Ad esempio, la seguente query sulla tabella titles
raggruppa per editore (pub_id
) e anche per tipo di libro (type
). I risultati della query vengono ordinati in base all'editore e mostrano le informazioni di riepilogo per ogni tipo di libro diverso prodotto dall'editore:
SELECT pub_id, type, SUM(price) Total_price
FROM titles
GROUP BY pub_id, type
L'output risultante potrebbe essere simile al seguente:
Per raggruppare le righe
Avviare la query aggiungendo le tabelle da riepilogare al riquadro Diagramma.
Fare clic con il pulsante destro del mouse sullo sfondo del riquadro Diagramma, quindi scegliere Aggiungi raggruppamento per dal menu di scelta rapida. Progettazione delle query e delle viste aggiunge una colonna Group By alla griglia nel riquadro dei criteri.
Aggiungere la colonna o le colonne da raggruppare al riquadro Criteri. Se si vuole che la colonna appaia nell'output della query, assicurarsi che la colonna Output sia selezionata per l'output.
Il Progettista di Query e Viste aggiunge una clausola GROUP BY all'istruzione nel riquadro SQL. Ad esempio, l'istruzione SQL potrebbe essere simile alla seguente:
SELECT pub_id FROM titles GROUP BY pub_id
Aggiungere la colonna o le colonne da aggregare al riquadro Criteri. Assicurarsi che la colonna sia contrassegnata per l'output.
Nella cella della griglia Raggruppa per per la colonna che verrà aggregata selezionare la funzione di aggregazione appropriata.
Il Progettazione Query e Vista assegna automaticamente un alias alla colonna di cui si sta creando il riepilogo. È possibile sostituire questo alias generato automaticamente con uno più significativo. Per ulteriori dettagli, vedere Creazione di alias di colonna.
L'istruzione corrispondente nel riquadro SQL potrebbe essere simile alla seguente:
SELECT pub_id, SUM(price) AS Totalprice FROM titles GROUP BY pub_id