ใช้ SUM() ร่วมกับ GROUP BY เพื่อรวมค่าตามเงื่อนไข
สร้างตารางและเพิ่มข้อมูล
mysql> create table DemoTable (
-> EmployeeName varchar(20),
-> JoiningDate date,
-> Salary int
-> );
Query OK, 0 rows affected (0.54 sec)
mysql> insert into DemoTable values('David','2019-11-02',400);
Query OK, 1 row affected (0.52 sec)
mysql> insert into DemoTable values('Robert','2018-11-25',100);
Query OK, 1 row affected (0.39 sec)
mysql> insert into DemoTable values('Bob','2019-12-14',600);
Query OK, 1 row affected (0.25 sec)
mysql> insert into DemoTable values('Carol','2019-11-03',300);
Query OK, 1 row affected (0.23 sec)
คิวรี่รวมเงินเดือนตามปีและเดือน
mysql> select year(JoiningDate) as JoiningYear,
-> month(JoiningDate) as JoiningMonth,
-> sum(Salary) as Total,
-> group_concat(EmployeeName) as Name
-> from DemoTable
-> group by JoiningYear, JoiningMonth;
ผลลัพธ์
+-------------+--------------+-------+-------------+ | JoiningYear | JoiningMonth | Total | Name | +-------------+--------------+-------+-------------+ | 2018 | 11 | 100 | Robert | | 2019 | 11 | 700 | David,Carol | | 2019 | 12 | 600 | Bob | +-------------+--------------+-------+-------------+ 3 rows in set (0.04 sec)
GROUP_CONCAT() ใช้รวมชื่อพนักงานในแต่ละกลุ่มเพื่อดูรายละเอียด