Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Clausola GROUP BY | Raggruppamento
SQL Intermedio

Scorri per mostrare il menu

book
Clausola GROUP BY

Benvenuti al corso di SQL Intermedio!

Nella prima sezione, ci immergeremo in come possiamo raggruppare e aggregare i dati all'interno delle nostre tabelle.

Cerchiamo di capire cosa significa "raggruppare i dati" usando un semplice esempio di una tabella dei dipendenti:

Raggruppare i Dati

Abbiamo un compito di scoprire il numero di dipendenti in ciascun dipartimento. Per fare ciò, raggrupperemo i dati per la colonna department e utilizzeremo l'aggregazione con la funzione COUNT(*).

Ecco come apparirà l'implementazione:

123
SELECT department, COUNT(*) AS number_of_employees FROM employees GROUP BY department
copy

Quindi, come puoi vedere, la sintassi per raggruppare i dati è la seguente:

sql

Nota

AGG_FUNC significa funzioni di aggregazione come MAX, MIN, COUNT, ecc.

Questa sintassi esiste per trovare determinati valori utilizzando funzioni di aggregazione in colonne specifiche.

Consideriamo un altro esempio: ci è stato chiesto di trovare il dipartimento con lo stipendio medio più alto.

Per recuperare tali dati, dobbiamo raggruppare i dati per la colonna department e poi usare la funzione AVG() per calcolare lo stipendio medio:

123
SELECT department, AVG(salary) as average_salary FROM employees GROUP BY department
copy

In questa parte della sezione, lavoreremo con il database del sistema della metropolitana di Montreal, che contiene la tabella metro_travel_time.

Questa tabella conterrà informazioni sulla linea della stazione(line_name), il suo nome(station_name) e la quantità di tempo che impiega un treno per viaggiare da una stazione all'altra(time_to_next_station).

Ecco come appare questa tabella e l'anteprima dei dati in essa:

Come puoi vedere, questa è una tabella non complessa. Pensiamo a dove possiamo utilizzare il raggruppamento qui.

L'opzione più ovvia è raggruppare per i colori delle linee della metropolitana. Ciò significa che possiamo aggregare i dati, raggruppandoli per il colore della linea della metropolitana.

Alias

Negli esercizi, utilizzerai spesso un concetto chiamato alias. Un alias è essenzialmente un "soprannome" per una colonna che recuperi con un'istruzione SELECT. È specificato utilizzando la seguente sintassi:

sql

Un alias influisce solo su come la colonna appare nella risposta.

Ad esempio, invece di MAX(time), la colonna potrebbe essere chiamata max_time se assegni quell'alias. Questo rende l'output più leggibile e chiaro.

Compito

Swipe to start coding

Il tuo compito è trovare il tempo più lungo fino alla stazione successiva su ogni linea. Questo ci permetterà di determinare il tempo di viaggio più lungo tra le stazioni per ogni linea della metropolitana. Per fare ciò, utilizza la funzione MAX() e assegnale l'alias max_time, raggruppando i dati per la colonna line_name.

Istruzioni Brevi

  • Recupera la colonna line_name e il valore massimo della colonna time_to_next_station.
  • Aggiungi l'alias max_time per il valore massimo.
  • Raggruppa i dati per la colonna line_name.

Una volta completato questo compito, fai clic sul pulsante sotto il codice per verificare la tua soluzione.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 1

Chieda ad AI

expand
ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

book
Clausola GROUP BY

Benvenuti al corso di SQL Intermedio!

Nella prima sezione, ci immergeremo in come possiamo raggruppare e aggregare i dati all'interno delle nostre tabelle.

Cerchiamo di capire cosa significa "raggruppare i dati" usando un semplice esempio di una tabella dei dipendenti:

Raggruppare i Dati

Abbiamo un compito di scoprire il numero di dipendenti in ciascun dipartimento. Per fare ciò, raggrupperemo i dati per la colonna department e utilizzeremo l'aggregazione con la funzione COUNT(*).

Ecco come apparirà l'implementazione:

123
SELECT department, COUNT(*) AS number_of_employees FROM employees GROUP BY department
copy

Quindi, come puoi vedere, la sintassi per raggruppare i dati è la seguente:

sql

Nota

AGG_FUNC significa funzioni di aggregazione come MAX, MIN, COUNT, ecc.

Questa sintassi esiste per trovare determinati valori utilizzando funzioni di aggregazione in colonne specifiche.

Consideriamo un altro esempio: ci è stato chiesto di trovare il dipartimento con lo stipendio medio più alto.

Per recuperare tali dati, dobbiamo raggruppare i dati per la colonna department e poi usare la funzione AVG() per calcolare lo stipendio medio:

123
SELECT department, AVG(salary) as average_salary FROM employees GROUP BY department
copy

In questa parte della sezione, lavoreremo con il database del sistema della metropolitana di Montreal, che contiene la tabella metro_travel_time.

Questa tabella conterrà informazioni sulla linea della stazione(line_name), il suo nome(station_name) e la quantità di tempo che impiega un treno per viaggiare da una stazione all'altra(time_to_next_station).

Ecco come appare questa tabella e l'anteprima dei dati in essa:

Come puoi vedere, questa è una tabella non complessa. Pensiamo a dove possiamo utilizzare il raggruppamento qui.

L'opzione più ovvia è raggruppare per i colori delle linee della metropolitana. Ciò significa che possiamo aggregare i dati, raggruppandoli per il colore della linea della metropolitana.

Alias

Negli esercizi, utilizzerai spesso un concetto chiamato alias. Un alias è essenzialmente un "soprannome" per una colonna che recuperi con un'istruzione SELECT. È specificato utilizzando la seguente sintassi:

sql

Un alias influisce solo su come la colonna appare nella risposta.

Ad esempio, invece di MAX(time), la colonna potrebbe essere chiamata max_time se assegni quell'alias. Questo rende l'output più leggibile e chiaro.

Compito

Swipe to start coding

Il tuo compito è trovare il tempo più lungo fino alla stazione successiva su ogni linea. Questo ci permetterà di determinare il tempo di viaggio più lungo tra le stazioni per ogni linea della metropolitana. Per fare ciò, utilizza la funzione MAX() e assegnale l'alias max_time, raggruppando i dati per la colonna line_name.

Istruzioni Brevi

  • Recupera la colonna line_name e il valore massimo della colonna time_to_next_station.
  • Aggiungi l'alias max_time per il valore massimo.
  • Raggruppa i dati per la colonna line_name.

Una volta completato questo compito, fai clic sul pulsante sotto il codice per verificare la tua soluzione.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 1
Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Siamo spiacenti che qualcosa sia andato storto. Cosa è successo?
some-alt