Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

MySQL - TỔNG các hàng có cùng ID

Sử dụng GROUP BY kết hợp HAVING để lọc sau khi tổng hợp.

Tạo bảng demo84:

mysql> CREATE TABLE demo84 (
    -> id INT,
    -> price INT
    -> );

Chèn dữ liệu:

mysql> INSERT INTO demo84 VALUES(1,2000);
mysql> INSERT INTO demo84 VALUES(1,2000);
mysql> INSERT INTO demo84 VALUES(2,1800);
mysql> INSERT INTO demo84 VALUES(2,2200);
mysql> INSERT INTO demo84 VALUES(3,1700);

Hiển thị dữ liệu:

mysql> SELECT * FROM demo84;
+------+-------+
| id   | price |
+------+-------+
| 1    | 2000  |
| 1    | 2000  |
| 2    | 1800  |
| 2    | 2200  |
| 3    | 1700  |
+------+-------+

Truy vấn tổng price theo id và chỉ giữ các nhóm có tổng >= 2000:

mysql> SELECT id, SUM(price) AS Total
    -> FROM demo84
    -> GROUP BY id
    -> HAVING SUM(price) >= 2000;

Kết quả:

+------+-------+
| id   | Total |
+------+-------+
| 1    | 4000  |
| 2    | 4000  |
+------+-------+