Hàm SUM trong MYSQL - Tính tổng một cột (Hiểu trong 5 phút)

Hàm sum trong mysql, tính tổng một cột

Hàm SUM được sử dụng để tính tổng các giá trị trong một cột của bảng. Ví dụ có thể tính tổng số lương của tất cả nhân viên trong một bảng.

Cú pháp của hàm SUM trong MySQL

SELECT SUM(column_name) 
FROM table_name;

Trong đó:

  • column_name: Là tên cột cần tính tổng
  • table_name: Là tên bảng

Cũng có thể sử dụng thêm mệnh đề WHERE để lọc theo các điều kiện rồi tính tổng các hàng thỏa mãn.

SELECT SUM(column_name) 
FROM table_name
WHERE condition

condition: Điều kiện

Hoặc tính tổng theo từng nhóm được nhóm bởi mệnh đề GROUP BY.

SELECT SUM(column_name) 
FROM table_name
GROUP BY column_name1

(Vẫn có thể sử dụng mệnh để where ở đây nhé)

column_name1: Tên cột để nhóm

>>XEM THÊM: Mệnh đề JOIN trong MySQL – Mệnh đề kết hợp dữ liệu từ nhiều bảng

Ví dụ sử dụng

Mình có bảng dữ liệu Users như dưới đây.

Bảng dữ liệu users

Ví dụ 1: Với cột salary là tiền lương của mỗi user, vậy để tính tổng tất cả lương phải trả của toàn bộ user. Lệnh SQL.

SELECT SUM(salary) as total_salary
FROM `users`

Kết quả thực hiện truy vấn.

Kết quả thực hiện truy vấn hàm SUM tính tổng lương của các user

as total_salary là để đặt lại bí danh cho cột tính tổng (SUM(salary)). Nếu chưa hiểu về as, đọc thêm bài viết này nhé: Sử dụng AS (Alias) trong MySQL – Đặt bí danh trong MySQL.

Ví dụ 2: Tính tổng lương của các userAdmin, tức là các user có role 1. Vậy chúng ta sẽ kết hợp thêm mệnh đề WHERE với điều kiện là role = 1.

SELECT SUM(salary) as total_salary
FROM `users`
WHERE role = 1

Kết quả thực hiện truy vấn

Kết quả thực hiện truy vấn hàm SUM tính tổng lương của các user là admin

Ví dụ 3: Tính tổng tiền lương theo từng nhóm role user.

SELECT role, SUM(salary) as total_salary
FROM `users`
GROUP BY role

Kết quả thực hiện truy vấn.

Tính tổng tiền lương theo từng nhóm role

Kết quả các user có role 1 tổng tiền lương sẽ là 19.500.000. nhóm role 216.200.000 và nhóm role 3 7.500.00.

Cảm ơn bạn đã đợc hết bài viết! CHúc bạn học tốt!

[XEM TẤT CẢ CÁC BÀI HƯỚNG DẪN MYSQL TẠI ĐÂY]

XEM THÊM
Câu lệnh INSERT INTO trong MySQL – Lệnh chèn dữ liệu vào bảng
Câu lệnh CREATE TABLE trong MySQL – Lệnh tạo bảng mới
Các kiểu dữ liệu trong MySQL (Data Types) – Học MySQL
Câu lệnh SELECT trong MySQL – Khi nào thì dùng lệnh SELECT
Toán tử so sánh trong MySQL – So sánh bằng, lớn hơn, nhỏ hơn