Kurs
Die SQL-Funktion SUM() ist eine nützliche Aggregatfunktion, um Summen numerischer Spalten zu berechnen. Sie ist in der Datenanalyse wichtig, weil sie zentrale Kennzahlen einzelner numerischer Spalten zusammenfasst. Durch ihre einfache Anwendung hilft die SUM()-Funktion Datenanalysten, aus großen Datensätzen aussagekräftige Erkenntnisse zu gewinnen. Außerdem wird diese vielseitige Funktion in verschiedenen Datenbanken unterstützt, darunter SQL Server, PostgreSQL, MySQL und Oracle.
Wenn du deine analytischen Kompetenzen als angehende oder erfahrene:r Data Analyst weiterentwickeln willst, empfehle ich dir die DataCamp-Kurse Introduction to SQL und Intermediate SQL, um deine Datenanalyse-Skills auszubauen. Das SQL Basics Cheat Sheet ist außerdem eine gute Referenz für deinen weiteren Weg.
So verwendest du die SUM()-Funktion in SQL
Die SQL-Funktion SUM() aggregiert die Summe einer bestimmten Spalte in einem Datensatz. Betrachte dazu die Tabelle orders mit folgender Struktur.

Beispieltabelle zur Aggregation von Spaltensummen mit der Funktion SUM(). Bild: Autor.
Die folgende Abfrage liefert die Gesamtsummen aus der Spalte quantity als Alias total_quantity sowie den Umsatz, berechnet als Summe des Produkts aus quantity und price, mit dem Alias total_revenue.
Beachte, dass im Fall von total_revenue die SUM()-Funktion mit einem Ausdruck kombiniert wird, um vor der Summenbildung eine zusätzliche Berechnung durchzuführen. Außerdem ignoriert SUM() beim Berechnen der Summen die NULL-Werte.
-- Select the total quantity and the total revenue-- Calculate the total quantity of all orders and alias 'total_quantity'.-- Calculate the total revenue and assigns it an alias 'total_revenue'.SELECT SUM(quantity) AS total_quantity, SUM(quantity * price) AS total_revenueFROM orders;
Beispielausgabe der SUM()-Funktion mit Alias und Ausdruck. Bild: Autor.
Anwendungsfälle der SUM()-Funktion in SQL
Die SUM()-Funktion in SQL kann auch für fortgeschrittene Berechnungen eingesetzt werden. Schauen wir uns einige Beispiele an.
Kumulative Summe in SQL berechnen
Eine kumulative Summe ist die laufende Gesamtsumme einer numerischen Spalte. Sie ist wichtig, um Kennzahlen wie Umsatz oder Verkäufe über verschiedene Zeiträume hinweg zu verfolgen. Die folgende Abfrage zeigt, wie du mit SUM() die kumulative Gesamtsumme der Spalte quantity berechnest.
-- Calculate cumulative sums of the 'quantity' column for each order_dateSELECT order_date, quantity, -- Calculate the cumulative sum of 'quantity' ordered by 'order_date' SUM(quantity) OVER (ORDER BY order_date) AS cumulative_quantityFROM orders;
Beispielausgabe der SQL-SUM()-Funktion zur Berechnung kumulativer Summen. Bild: Autor.
Ich empfehle dir den DataCamp-Kurs Data Manipulation in SQL, der den Einsatz von Window-Funktionen für Aggregationen wie laufende Summen im Detail erklärt. Das SQL Window Functions Cheat Sheet ist ebenfalls ein praktischer Spickzettel, um die verschiedenen Window-Funktionen und ihre Anwendungen schnell nachzuschlagen.
Mehrere Spalten in SQL summieren
Mit SUM() kannst du auch die Summen mehrerer Spalten berechnen. So aggregierst du Daten aus mehreren Spalten zu einer Gesamtsumme. Betrachte die neue Tabelle orders unten mit den Spalten opening_quantity und received_quantity.

Beispieltabelle zum Summieren mehrerer Spalten mit der SQL-Funktion SUM(). Bild: Autor.
Das folgende Beispiel zeigt, wie du mit SUM() die gemeinsamen Summen der Spalten opening_quantity und received_quantity berechnest. Dabei wird der Operator + verwendet, um eine arithmetische Addition zwischen zwei numerischen Werten durchzuführen.
-- Calculate the total quantity of opening_quantity and received_quantity columns-- Sum the total values in one columnSELECT SUM(opening_quantity + received_quantity) AS total_quantityFROM orders;
Beispielausgabe der SQL-SUM()-Funktion zum Summieren mehrerer Spalten. Bild: Autor.
Rolling Sum in SQL berechnen
Eine Rolling Sum ermöglicht es, Summen auf Basis einer festgelegten Anzahl vorheriger Zeilen zu berechnen. Die SQL-Funktion SUM() berechnet Rolling Sums für wichtige Kennzahlen wie z. B. 7-Tage-Gesamtverkäufe. Die folgende Abfrage zeigt, wie du die Rolling Sum der quantity über die letzten 3 Zeilen, sortiert nach order_date, berechnest.
-- Calculate rolling sums of the 'quantity' column for the past 3 orders for each order_dateSELECT order_date, quantity, -- Calculate the rolling sum of 'quantity' over the last 3 rows ordered by 'order_date' SUM(quantity) OVER ( ORDER BY order_date ROWS BETWEEN 2 PRECEDING AND CURRENT ROW ) AS rolling_quantityFROM orders;
Beispielausgabe zur Berechnung einer Rolling Sum in SQL mit der Funktion SUM(). Bild: Autor.
DISTINCT-Werte in SQL summieren
Du kannst die Werte einer bestimmten Spalte mit dem Schlüsselwort DISTINCT summieren, um nur die eindeutigen Werte zu berücksichtigen. Im folgenden Beispiel wird DISTINCT verwendet, um die eindeutigen Werte der Spalten quantity und price zu summieren.
-- Sum the distinct values of the quantity and price columnsSELECT SUM(DISTINCT quantity) AS total_distinct_quantity, SUM(DISTINCT price) AS total_distinct_priceFROM orders;SUM und weitere SQL-Aggregatfunktionen
Wie gesehen, ist die SQL-Funktion SUM() ein leistungsstarkes Werkzeug und vielseitiger als es zunächst scheint. Dennoch ist sie nur eine von vielen Aggregatfunktionen in SQL. Die folgende Tabelle fasst die gängigsten SQL-Aggregatfunktionen, ihre Beschreibung und Beispiele zusammen:
| Funktion | Beschreibung | Beispiel |
|---|---|---|
| SUM() | Berechnet die Gesamtsumme einer numerischen Spalte. | Gesamtmenge und Umsatz. |
| AVG() | Berechnet den Durchschnittswert einer numerischen Spalte. | Durchschnittlicher Produktpreis. |
| MIN() | Gibt den kleinsten Wert in einer Spalte zurück. | Minimale Bestellmenge. |
| MAX() | Gibt den größten Wert in einer Spalte zurück. | Höchster Produktpreis. |
| COUNT() | Gibt die Anzahl der Zeilen zurück, die einer Bedingung entsprechen. | Gesamtzahl der Bestellungen. |
Fazit
Die SUM()-Funktion in SQL zu beherrschen ist wichtig, um ihre verschiedenen Einsatzmöglichkeiten in der Datenanalyse zu verstehen. Sie wird in allen großen Datenbanken unterstützt und hat eine ähnliche Implementierung mit unterschiedlichen Klauseln und Window-Funktionen. Übe die Anwendungen der SUM()-Funktion mit verschiedenen Datensätzen, um deine SQL-Skills zu schärfen.
Wenn du deine SQL-Kompetenzen für Business Analytics ausbauen willst, schau dir den Skill-Lernpfad SQL Fundamentals von DataCamp an, um die gefragten Kompetenzen on demand zu lernen. Ebenso empfehle ich dir unseren Karriere-Lernpfad Associate Data Analyst in SQL, mit dem du die nötigen SQL-Kompetenzen erwirbst und vertiefst, um deine Karriere voranzubringen. Schließlich lohnt sich die SQL Associate Certification von DataCamp, um deine SQL-Expertise nachzuweisen und dich von anderen Data Analysts abzusetzen.
Häufig gestellte Fragen
Was ist die SQL-Funktion SUM()?
Die Funktion SUM() berechnet die Gesamtsumme einer numerischen Spalte über eine Tabelle bzw. einen Datensatz hinweg.
Worin liegt der Unterschied zwischen SUM() und COUNT()?
Die Funktion SUM() berechnet die Gesamtsumme in einer Spalte. COUNT() liefert die Anzahl der Zeilen basierend auf einer Bedingung.
Wie geht die Funktion SUM() mit NULL-Werten um?
Bei der Summenbildung ignoriert SUM() NULL-Werte in einer Spalte.
Kann man das Schlüsselwort DISTINCT mit SUM() verwenden?
Das Schlüsselwort DISTINCT kann mit SUM() verwendet werden, um die Summen eindeutiger Werte in einer Spalte zu berechnen.
Wie lässt sich SUM() mit Window-Funktionen nutzen?
Die Funktion SUM() kann als Window-Funktion mit der OVER-Klausel eingesetzt werden, um kumulative Summen und andere Berechnungen über Datenpartitionen hinweg zu ermitteln.
Welche anderen Funktionen in SQL sind SUM() ähnlich?
Weitere ähnliche Aggregatfunktionen in SQL sind AVG() für Durchschnitte, COUNT() für Zeilenzahlen, MIN() für den kleinsten Wert, MAX() für den größten Wert, COUNT(DISTINCT) für eindeutige Zählungen, GROUP_CONCAT() für Zeichenkettenverkettung sowie STDDEV() oder VARIANCE() für statistische Berechnungen. Diese Funktionen helfen, Daten effizient zu verdichten und zu analysieren.
