Hàm SUM() trong SQL
Hàm SQL SUM()
Hàm SUM()
trả về tổng của một cột số.
Ví dụ
Trả về tổng của tất cả các trường Quantity
trong bảng OrderDetails
:
SELECT SUM(Quantity)
FROM OrderDetails;
Hãy tự mình thử »Cú pháp
SELECT SUM( column_name )
FROM table_name
WHERE condition ;
Cơ sở dữ liệu demo
Dưới đây là lựa chọn từ bảng OrderDetails được sử dụng trong các ví dụ:
OrderDetailID | OrderID | ProductID | Quantity |
---|---|---|---|
1 | 10248 | 11 | 12 |
2 | 10248 | 42 | 10 |
3 | 10248 | 72 | 5 |
4 | 10249 | 14 | 9 |
5 | 10249 | 51 | 40 |
Thêm mệnh đề WHERE
Bạn có thể thêm mệnh đề WHERE
để chỉ định điều kiện:
Ví dụ
Trả về tổng trường Quantity
cho sản phẩm có ProductID
11:
SELECT SUM(Quantity)
FROM OrderDetails
WHERE ProductId = 11;
Hãy tự mình thử »Sử dụng bí danh
Đặt tên cho cột tóm tắt bằng cách sử dụng từ khóa AS
.
Sử dụng SUM() với GROUP BY
Ở đây chúng ta sử dụng hàm SUM()
và mệnh đề GROUP BY
để trả về Quantity
cho mỗi OrderID
trong bảng OrderDetails:
Ví dụ
SELECT OrderID, SUM(Quantity) AS [Total Quantity]
FROM OrderDetails
GROUP BY OrderID;
Hãy tự mình thử » Bạn sẽ tìm hiểu thêm về mệnh đề GROUP BY
sau trong hướng dẫn này.
SUM() Với một biểu thức
Tham số bên trong hàm SUM()
cũng có thể là một biểu thức.
Nếu chúng ta giả định rằng mỗi sản phẩm trong cột OrderDetails
có giá 10 đô la, chúng ta có thể tìm tổng thu nhập bằng đô la bằng cách nhân mỗi số lượng với 10:
Ví dụ
Sử dụng biểu thức bên trong hàm SUM()
:
SELECT SUM(Quantity * 10)
FROM OrderDetails;
Hãy tự mình thử » Chúng ta cũng có thể nối bảng OrderDetails
với bảng Products
để tìm số tiền thực tế, thay vì giả định là 10 đô la:
Ví dụ
Kết hợp OrderDetails
với Products
và sử dụng SUM()
để tìm tổng số tiền:
SELECT SUM(Price * Quantity)
FROM OrderDetails
LEFT JOIN Products ON OrderDetails.ProductID = Products.ProductID;
Hãy tự mình thử »Bạn sẽ tìm hiểu thêm về Joins sau trong hướng dẫn này.