Die AVG-Funktion in SQL wird häufig verwendet, um den Durchschnittswert aus einer Datenbank abzurufen. Allerdings kann das Ergebnis eine lange Dezimalzahl sein, die zur besseren Lesbarkeit gerundet werden sollte. In diesem Artikel erklären wir die grundlegende Verwendung der AVG-Funktion und die Methode zur Verwendung der ROUND-Funktion, um das Ergebnis zu runden.
Grundlegende Verwendung der AVG-Funktion
Die AVG-Funktion wird verwendet, um den Durchschnittswert einer angegebenen Spalte zu berechnen. Ein grundlegendes Beispiel wird unten gezeigt.
SELECT AVG(column_name) AS average_value
FROM table_name;
Diese Abfrage berechnet den Durchschnittswert der Spalte column_name
in der Tabelle table_name
und gibt das Ergebnis unter dem Aliasnamen average_value
zurück. Zum Beispiel, um den durchschnittlichen Gehalt aus den Gehaltsdaten der Mitarbeiter zu berechnen, wird sie wie folgt verwendet:
SELECT AVG(salary) AS average_salary
FROM employees;
Die ROUND-Funktion zum Runden
Die ROUND-Funktion wird verwendet, um eine Zahl auf eine angegebene Dezimalstellenanzahl zu runden. Ein grundlegendes Beispiel wird unten gezeigt.
SELECT ROUND(number, decimal_places) AS rounded_value;
Im number
geben Sie die zu rundende Zahl an und im decimal_places
die Anzahl der Dezimalstellen nach dem Runden. Zum Beispiel, um die Zahl 123.4567 auf zwei Dezimalstellen zu runden, verwenden Sie sie wie folgt:
SELECT ROUND(123.4567, 2) AS rounded_value;
Das Ergebnis dieser Abfrage wäre 123.46 als rounded_value
.
Kombination der AVG- und ROUND-Funktionen
Durch die Kombination der AVG- und ROUND-Funktionen können Sie den Durchschnittswert berechnen und das Ergebnis runden. Ein konkretes Beispiel wird unten gezeigt.
SELECT ROUND(AVG(column_name), decimal_places) AS rounded_average
FROM table_name;
Zum Beispiel, um den durchschnittlichen Gehalt aus den Gehaltsdaten der Mitarbeiter zu berechnen und das Ergebnis auf zwei Dezimalstellen zu runden, verwenden Sie sie wie folgt:
SELECT ROUND(AVG(salary), 2) AS rounded_average_salary
FROM employees;
Diese Abfrage berechnet den Durchschnittswert der Spalte salary
in der Tabelle employees
und gibt das Ergebnis, gerundet auf zwei Dezimalstellen, als rounded_average_salary
zurück.
So geben Sie die Anzahl der Dezimalstellen an
Mit dem zweiten Argument der ROUND-Funktion können Sie die Anzahl der Dezimalstellen angeben. Auf diese Weise können Sie das Ergebnis auf die gewünschte Genauigkeit runden.
Zum Beispiel, wie man auf eine Dezimalstelle, drei Dezimalstellen und fünf Dezimalstellen rundet, wird unten gezeigt.
Runden auf eine Dezimalstelle
SELECT ROUND(AVG(salary), 1) AS rounded_average_salary
FROM employees;
Diese Abfrage rundet das durchschnittliche Gehalt auf eine Dezimalstelle.
Runden auf drei Dezimalstellen
SELECT ROUND(AVG(salary), 3) AS rounded_average_salary
FROM employees;
Diese Abfrage rundet das durchschnittliche Gehalt auf drei Dezimalstellen.
Runden auf fünf Dezimalstellen
SELECT ROUND(AVG(salary), 5) AS rounded_average_salary
FROM employees;
Diese Abfrage rundet das durchschnittliche Gehalt auf fünf Dezimalstellen.
Auf diese Weise können Sie durch Anpassen des zweiten Arguments der ROUND-Funktion nach Bedarf runden.
Erweitertes Beispiel: Durchschnittswerte pro Gruppe runden
Durch die Kombination der AVG- und ROUND-Funktionen können Sie auch die Durchschnittswerte für bestimmte Gruppen runden. Zum Beispiel, um den durchschnittlichen Gehalt pro Abteilung auf zwei Dezimalstellen zu runden, verwenden Sie sie wie folgt:
SELECT department_id, ROUND(AVG(salary), 2) AS rounded_average_salary
FROM employees
GROUP BY department_id;
Diese Abfrage berechnet den Durchschnittswert der Spalte salary
in der Tabelle employees
für jede Abteilung und gibt das Ergebnis, gerundet auf zwei Dezimalstellen, als rounded_average_salary
zurück.
Beispiel: Durchschnittsgehalt pro Abteilung
Zum Beispiel können folgende Ergebnisse erzielt werden:
| department_id | rounded_average_salary |
|---------------|-------------------------|
| 1 | 6000.50 |
| 2 | 7200.75 |
| 3 | 5800.60 |
Auf diese Weise können Sie mit der GROUP BY-Klausel die Durchschnittswerte für bestimmte Gruppen berechnen und die Ergebnisse runden.
Zusammenfassung
Wir haben gelernt, wie man das Ergebnis der AVG-Funktion in SQL rundet. Wir haben den Prozess beschrieben, den Durchschnittswert mit der AVG-Funktion zu berechnen und das Ergebnis mit der ROUND-Funktion auf eine bestimmte Anzahl von Dezimalstellen zu runden. Außerdem haben wir ein erweitertes Beispiel gezeigt, wie man die Durchschnittswerte pro Abteilung rundet. Durch die Anwendung dieser Techniken können Sie die Ergebnisse von Datenbankabfragen besser lesbar und verständlicher machen.