Group by two columns
mysql>
mysql>
mysql> CREATE TABLE MATCHES
-> (MATCHNO INTEGER NOT NULL,
-> TEAMNO INTEGER NOT NULL,
-> EmployeeNO INTEGER NOT NULL,
-> WON SMALLINT NOT NULL,
-> LOST SMALLINT NOT NULL,
-> PRIMARY KEY (MATCHNO) );
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> INSERT INTO MATCHES VALUES ( 1, 1, 6, 3, 1);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 2, 1, 6, 2, 3);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 3, 1, 6, 3, 0);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 4, 1, 44, 3, 2);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 5, 1, 83, 0, 3);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 6, 1, 2, 1, 3);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 7, 1, 57, 3, 0);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 8, 1, 8, 0, 3);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES ( 9, 2, 27, 3, 2);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES (10, 2, 104, 3, 2);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES (11, 2, 112, 2, 3);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES (12, 2, 112, 1, 3);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO MATCHES VALUES (13, 2, 8, 0, 3);
Query OK, 1 row affected (0.00 sec)
mysql>
mysql>
mysql> SELECT TEAMNO, EmployeeNO
-> FROM MATCHES
-> GROUP BY TEAMNO, EmployeeNO
-> ;
+--------+------------+
| TEAMNO | EmployeeNO |
+--------+------------+
| 1 | 2 |
| 1 | 6 |
| 1 | 8 |
| 1 | 44 |
| 1 | 57 |
| 1 | 83 |
| 2 | 8 |
| 2 | 27 |
| 2 | 104 |
| 2 | 112 |
+--------+------------+
10 rows in set (0.00 sec)
mysql>
mysql> SELECT TEAMNO, EmployeeNO
-> FROM MATCHES
-> GROUP BY EmployeeNO, TEAMNO
-> ;
+--------+------------+
| TEAMNO | EmployeeNO |
+--------+------------+
| 1 | 2 |
| 1 | 6 |
| 1 | 8 |
| 2 | 8 |
| 2 | 27 |
| 1 | 44 |
| 1 | 57 |
| 1 | 83 |
| 2 | 104 |
| 2 | 112 |
+--------+------------+
10 rows in set (0.00 sec)
mysql>
mysql> SELECT TEAMNO, EmployeeNO, SUM(WON),
-> COUNT(*), MIN(LOST)
-> FROM MATCHES
-> GROUP BY TEAMNO, EmployeeNO;
+--------+------------+----------+----------+-----------+
| TEAMNO | EmployeeNO | SUM(WON) | COUNT(*) | MIN(LOST) |
+--------+------------+----------+----------+-----------+
| 1 | 2 | 1 | 1 | 3 |
| 1 | 6 | 8 | 3 | 0 |
| 1 | 8 | 0 | 1 | 3 |
| 1 | 44 | 3 | 1 | 2 |
| 1 | 57 | 3 | 1 | 0 |
| 1 | 83 | 0 | 1 | 3 |
| 2 | 8 | 0 | 1 | 3 |
| 2 | 27 | 3 | 1 | 2 |
| 2 | 104 | 3 | 1 | 2 |
| 2 | 112 | 3 | 2 | 3 |
+--------+------------+----------+----------+-----------+
10 rows in set (0.00 sec)
mysql>
mysql> drop table matches;
Query OK, 0 rows affected (0.00 sec)
Related examples in the same category