Holen Sie sich die Summe mehrerer Spalten in MySQL
Im heutigen Beitrag lernen wir, wie man mehrere Spalten in MySQL summiert.
Mehrere Spalten in MySQL summieren
Sie können die Gesamtwerte in einem Set mit der Aggregatfunktion SUM()
berechnen. Die NULL
-Werte werden bei der Berechnung durch die SUM()
-Funktion nicht berücksichtigt.
Die Aggregatfunktion SUM()
hat folgende Syntax:
SELECT SUM(aggregate_expression)
FROM table_name
WHERE conditions;
Der Parameter aggregate_expression
gibt die Spalte oder den Ausdruck für die Berechnung der Summe an.
Die Tabellen, aus denen wir Datensätze erhalten möchten, werden durch table_name
angegeben. Die FROM
-Klausel muss mindestens eine Tabelle auflisten.
Die conditions
für WHERE
sind optional. Damit die Aufzeichnungen anerkannt werden, müssen bestimmte Anforderungen erfüllt werden, wie in der WHERE
-Anweisung angegeben.
Sie müssen die CASE
-Anweisung in einer MySQL-Abfrage verwenden, um mehrere sum
-Spalten auszuwählen und sie in verschiedenen Spalten anzuzeigen. Wenn eine Bedingung die bereitgestellte Anweisung erfüllt, wird die Funktion CASE()
in MySQL verwendet, um einen Wert zu bestimmen, indem die Bedingung übergeben wird; andernfalls gibt es die Anweisung in einem else
-Abschnitt zurück.
Wenn eine Bedingung erfüllt ist, hält es das Lesen an und gibt die Ausgabe zurück. Folgendes ist die Syntax:
SELECT
SUM( CASE WHEN column_name1=value_1 THEN column_name2 END ) AS alias_column_1,
SUM( CASE WHEN column_name1=value_2 THEN column_name2 END ) AS alias_column_2,
FROM yourTableName;
Betrachten Sie das folgende Beispiel, um das vorherige Konzept besser zu verstehen.
-- Total Bonus
SELECT
SUM(bonus) as TotalBonus
FROM
EmployeeBonus;
-- Total Marks
SELECT
SUM(maths+physics+chemistry) as TotalMarks, studentId
FROM
StudentMarks
GROUP BY
studentId;
SELECT
SUM(CASE WHEN subject='Maths' THEN marks END) AS 'Maths TOTAL SCORE',
SUM(CASE WHEN subject='Physics' THEN marks END) AS 'Physics TOTAL SCORE',
SUM(CASE WHEN subject='Chemistry' THEN marks END) AS 'Chemistry TOTAL SCORE'
FROM StudentMarks;
Im obigen Beispiel ermitteln wir den Gesamtbonus, den das Unternehmen bisher ausgezahlt hat. In der zweiten Operation streben wir an, die kumulierten Noten aller Studierenden über alle Themen hinweg zu erhalten.
Führen Sie die obige Codezeile in jedem mit MySQL kompatiblen Browser aus. Es wird das folgende Ergebnis angezeigt:
+------------+
| TotalBonus |
+------------+
| $123445663 |
+------------+
1 row in set (0.00 sec)
+------------+-----------+
| TotalMarks | studentId |
+------------+-----------+
| 278 | 1 |
| 256 | 2 |
| 289 | 3 |
+------------+-----------+
3 row in set (0.01 sec)
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn