La funzione AVG in SQL è ampiamente utilizzata per ottenere il valore medio da un database. Tuttavia, i risultati possono spesso includere numeri lunghi dopo il punto decimale, rendendo necessaria l’applicazione di un arrotondamento per una migliore leggibilità. In questo articolo, spiegheremo l’uso di base della funzione AVG e come utilizzare la funzione ROUND per arrotondare i risultati.
Uso di base della funzione AVG
La funzione AVG viene utilizzata per calcolare la media dei valori di una colonna specificata. Un esempio di utilizzo di base è mostrato di seguito.
SELECT AVG(column_name) AS average_value
FROM table_name;
Questa query calcola la media dei valori nella colonna column_name
della tabella table_name
e restituisce il risultato con l’alias average_value
. Ad esempio, per calcolare lo stipendio medio dei dipendenti, è possibile utilizzare la query seguente.
SELECT AVG(salary) AS average_salary
FROM employees;
Funzione ROUND per l’arrotondamento
La funzione ROUND viene utilizzata per arrotondare un numero al numero di cifre decimali specificato. Un esempio di utilizzo di base è mostrato di seguito.
SELECT ROUND(number, decimal_places) AS rounded_value;
number
rappresenta il numero che si desidera arrotondare, mentre decimal_places
indica il numero di cifre decimali dopo l’arrotondamento. Ad esempio, per arrotondare il numero 123.4567 a due cifre decimali, si utilizza la seguente query.
SELECT ROUND(123.4567, 2) AS rounded_value;
Il risultato di questa query sarà 123.46, restituito con l’alias rounded_value
.
Combinare AVG e ROUND
Combinando le funzioni AVG e ROUND, è possibile calcolare la media e arrotondare il risultato. Un esempio è mostrato di seguito.
SELECT ROUND(AVG(column_name), decimal_places) AS rounded_average
FROM table_name;
Ad esempio, per calcolare lo stipendio medio dei dipendenti e arrotondare il risultato a due cifre decimali, è possibile utilizzare la query seguente.
SELECT ROUND(AVG(salary), 2) AS rounded_average_salary
FROM employees;
Questa query calcola la media della colonna salary
nella tabella employees
e restituisce il risultato arrotondato a due cifre decimali con l’alias rounded_average_salary
.
Come specificare il numero di cifre decimali
È possibile specificare il numero di cifre decimali nella funzione ROUND attraverso il secondo argomento, permettendo di arrotondare il risultato a una precisione desiderata.
Di seguito sono riportati esempi di arrotondamento a 1, 3 e 5 cifre decimali.
Arrotondare a 1 cifra decimale
SELECT ROUND(AVG(salary), 1) AS rounded_average_salary
FROM employees;
Questa query arrotonda lo stipendio medio a una cifra decimale.
Arrotondare a 3 cifre decimali
SELECT ROUND(AVG(salary), 3) AS rounded_average_salary
FROM employees;
Questa query arrotonda lo stipendio medio a tre cifre decimali.
Arrotondare a 5 cifre decimali
SELECT ROUND(AVG(salary), 5) AS rounded_average_salary
FROM employees;
Questa query arrotonda lo stipendio medio a cinque cifre decimali.
In questo modo, regolando il secondo argomento della funzione ROUND, è possibile arrotondare con la precisione desiderata.
Esempio applicato: Arrotondare la media per gruppo
È possibile combinare le funzioni AVG e ROUND per arrotondare la media all’interno di specifici gruppi. Ad esempio, per arrotondare lo stipendio medio per dipartimento a due cifre decimali, è possibile utilizzare la seguente query.
SELECT department_id, ROUND(AVG(salary), 2) AS rounded_average_salary
FROM employees
GROUP BY department_id;
Questa query calcola la media della colonna salary
per ogni dipartimento nella tabella employees
e restituisce il risultato arrotondato a due cifre decimali con l’alias rounded_average_salary
.
Esempio: Stipendio medio per dipartimento
Ad esempio, è possibile ottenere un risultato simile a quello seguente.
| department_id | rounded_average_salary |
|---------------|-------------------------|
| 1 | 6000.50 |
| 2 | 7200.75 |
| 3 | 5800.60 |
In questo modo, utilizzando la clausola GROUP BY, è possibile calcolare la media per specifici gruppi e arrotondare il risultato.
Conclusione
Abbiamo esaminato come arrotondare i risultati della funzione AVG in SQL. Abbiamo introdotto i passaggi per calcolare la media con la funzione AVG e per arrotondare i risultati a un numero specificato di cifre decimali utilizzando la funzione ROUND. Inoltre, abbiamo mostrato un esempio applicato di arrotondamento della media per gruppi, come nel caso degli stipendi medi per dipartimento. Utilizzando queste tecniche, è possibile rendere i risultati delle query del database più leggibili e comprensibili.