MySQL에서 여러 열의 합계 얻기

Shraddha Paghdar 2023년6월20일
MySQL에서 여러 열의 합계 얻기

오늘 포스팅에서는 MySQL에서 여러 열을 합산하는 방법에 대해 알아보겠습니다.

MySQL의 여러 열 합계

집계 함수 SUM()을 사용하여 세트의 총 값을 계산할 수 있습니다. NULL 값은 SUM() 함수에 의한 계산에서 고려되지 않습니다.

SUM() 집계 함수의 구문은 다음과 같습니다.

SELECT SUM(aggregate_expression)
FROM table_name
WHERE conditions;

aggregate_expression 매개변수는 합계를 계산하기 위한 열 또는 표현식을 지정합니다.

레코드를 가져오려는 테이블은 table_name으로 지정됩니다. FROM절은 최소한 하나의 테이블을 나열해야 합니다.

WHERE에 대한 조건은 선택 사항입니다. 레코드가 인식되려면 WHERE 문에 명시된 대로 특정 요구 사항을 충족해야 합니다.

MySQL 쿼리에서 CASE 문을 사용하여 여러 sum 열을 선택하고 개별 열에 표시해야 합니다. 조건이 제공된 문을 충족하면 MySQL의 CASE() 함수를 사용하여 조건을 전달하여 값을 결정합니다. 그렇지 않으면 else 섹션의 명령문을 반환합니다.

조건이 충족되면 읽기를 중지하고 출력을 반환합니다. 구문은 다음과 같습니다.

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;

이전 개념을 더 잘 이해하려면 다음 예를 고려하십시오.

-- 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;

위의 예에서는 기업이 지금까지 지급한 총 상여금을 파악하고 있습니다. 두 번째 작업에서는 모든 주제에 걸쳐 모든 학생의 누적 성적을 얻는 것을 목표로 합니다.

MySQL과 호환되는 모든 브라우저에서 위의 코드 행을 실행하십시오. 다음과 같은 결과가 표시됩니다.

+------------+
| 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 Paghdar avatar Shraddha Paghdar avatar

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