Hàm sum() trong MySQL được sử dụng để trả về tổng giá trị tổng của một biểu thức. Nó trả về NULL nếu tập kết quả không có hàng nào. Nó là một trong những loại hàm tổng hợp trong MySQL
cú pháp
Sau đây là cú pháp của hàm sum() trong MySQL
Giải thích thông số
tổng hợp_biểu thức. Nó chỉ định cột hoặc biểu thức mà chúng ta sẽ tính tổng
tên_bảng. Nó chỉ định các bảng từ nơi chúng tôi muốn truy xuất bản ghi. Phải có ít nhất một bảng được liệt kê trong mệnh đề TỪ
điều kiện NƠI. nó là tùy chọn. Nó chỉ định các điều kiện phải được đáp ứng để các bản ghi được chọn
Ví dụ hàm sum() của MySQL
Hãy xem xét cơ sở dữ liệu của chúng tôi có một bảng có tên nhân viên, có dữ liệu sau. Bây giờ, chúng ta sẽ hiểu chức năng này với các ví dụ khác nhau
1. Ví dụ cơ bản
Thực hiện truy vấn sau để loại bỏ các bản ghi trùng lặp trong cột working_hours của bảng nhân viên rồi tính tổng
Thí dụ
Trả về tổng của trường "Số lượng" trong bảng "Chi tiết đơn hàng"
CHỌN SUM(Số lượng) dưới dạng Tổng số mặt hàng được đặt hàng TỪ chi tiết đơn hàng;
Tự mình thử »Định nghĩa và cách sử dụng
Hàm SUM() tính tổng của một tập hợp các giá trị
Ghi chú. Giá trị NULL bị bỏ qua
cú pháp
Giá trị tham số
Tham sốMô tảBiểu thứcBắt buộc. Một trường hoặc một công thứcchi tiết kỹ thuật
Bản tóm tắt. trong hướng dẫn này, bạn sẽ học cách sử dụng hàm MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 để tính tổng các giá trị trong một tập hợpGiới thiệu về hàm MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5Hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 là một hàm tổng hợp cho phép bạn tính tổng các giá trị trong một tập hợp. Cú pháp của hàmCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 như sauSUM(DISTINCT expression)
Code language: SQL (Structured Query Language) (sql)Đây là cách hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 hoạt động- Nếu bạn sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 trong câu lệnhINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)1 không trả về hàng nào, thì hàmCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 trả vềINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)3, không phải số không - Tùy chọn
INSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)4 hướng dẫn hàmCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 tính tổng của chỉ các giá trị riêng biệt trong một tập hợp - Hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 bỏ qua các giá trịINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)3 trong phép tính
Minh họa hàm MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5Đầu tiên, tạo một bảng mới tên là
INSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)9CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)Sau đó, chèn một số hàng vào bảng
INSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)9INSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)Thứ ba, sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 để tính tổng giá trị trong cộtCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)02CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)0Như bạn có thể thấy, hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 tính tổng của 1, 1, 2 và 3. Và nó bỏ qua NULL.Cuối cùng, sử dụng tùy chọn
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với tùy chọnINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)4 để tính tổng giá trị trong cộtCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)02CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)6Trong trường hợp này, tùy chọn
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với tùy chọnINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)4 chỉ tính tổng các giá trị riêng biệt là 1, 2 và 3.Ví dụ về chức năng MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5Hãy xem bảng
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)60 trong cơ sở dữ liệu mẫu1) Ví dụ hàm MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 đơn giảnVí dụ này sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 để lấy tổng số mặt hàng của chi tiết đơn hàngCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)32) Ví dụ về hàm MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với biểu thứcPhần sau hiển thị các mục hàng đặt hàng của số thứ tự 10110
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5Để tính tổng cho đơn hàng số 10110, bạn sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 như sau.CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)7Trong hướng dẫn này, hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 tính tổng biểu thức sau của tất cả các mục hàng có số thứ tự 10110.CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)93) MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với ví dụ về mệnh đềCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)67Hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 thường dùng với mệnh đềCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)69 để tính tổng cho từng nhómVí dụ: bạn có thể tính toán tổng số tiền của từng đơn đặt hàng bằng cách sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với mệnh đềCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)67 như được hiển thị trong truy vấn sauSUM(DISTINCT expression)
Code language: SQL (Structured Query Language) (sql)6trong ví dụ này
- Mệnh đề
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)67 chia chi tiết đơn đặt hàng thành các nhóm được nhóm theo số thứ tự - Hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 tính tổng từng số tiền của từng đơn hàng
4) MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với ví dụ về mệnh đềCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)35Bạn có thể sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 trong mệnh đềCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)37 để lọc nhóm. Ví dụ này minh họa cách chọn các đơn đặt hàng có số tiền đặt hàng lớn hơnCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)38CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)05) MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với ví dụ vềINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)3Hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 trả vềINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)3 nếu tập kết quả trống. Đôi khi, bạn có thể muốn hàmCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 trả về 0 thay vìINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)3Trong trường hợp này, bạn có thể sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)55. HàmCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)56 chấp nhận hai đối số và trả về đối số thứ hai nếu đối số thứ nhất làINSERT INTO sum_demo(n) VALUES(1),(1),(2),(NULL),(3);
Code language: SQL (Structured Query Language) (sql)3;Xem truy vấn sau
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)16) MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với ví dụ tham giaXem các bảng
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)59 vàCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)60 sau đâyBạn có thể sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 trong mệnh đềCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)72 vớiCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)73 để tính tổng các giá trị trong một bảng dựa trên một điều kiện được chỉ định bởi các giá trị trong một bảng khácCâu lệnh này sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 để tính tổng số tiền của các đơn hàng bị hủyCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)27) Ví dụ MySQL SUM IF
Câu lệnh sau sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 để tính số lượng hàng đã bán cho mỗi trạng thái đơn hàngCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)3Nếu bạn muốn xoay hàng thành cột, bạn có thể sử dụng hàm
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 với biểu thứcCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)77. Đó là loại logicCREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)78.CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)4Trong hướng dẫn này, bạn đã học cách sử dụng hàm MySQL
CREATE TABLE sum_demo ( n INT );
Code language: SQL (Structured Query Language) (sql)5 để tính tổng của một tập hợp các giá trị.