Left outer join
mysql>
mysql>
mysql> CREATE TABLE PENALTIES
-> (PAYMENTNO INTEGER NOT NULL,
-> EmployeeNO INTEGER NOT NULL,
-> PAYMENT_DATE DATE NOT NULL,
-> AMOUNT DECIMAL(7,2) NOT NULL,
-> PRIMARY KEY (PAYMENTNO) );
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> INSERT INTO PENALTIES VALUES (1, 6, '1980-12-08',100);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (2, 44, '1981-05-05', 75);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (3, 27, '1983-09-10',100);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (4,104, '1984-12-08', 50);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (5, 44, '1980-12-08', 25);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (6, 8, '1980-12-08', 25);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (7, 44, '1982-12-30', 30);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO PENALTIES VALUES (8, 27, '1984-11-12', 75);
Query OK, 1 row affected (0.00 sec)
mysql>
mysql>
mysql>
mysql> CREATE TABLE TEAMS
-> (TEAMNO INTEGER NOT NULL,
-> EmployeeNO INTEGER NOT NULL,
-> DIVISION CHAR(6) NOT NULL,
-> PRIMARY KEY (TEAMNO) );
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql>
mysql> INSERT INTO TEAMS VALUES (1, 6, 'first');
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO TEAMS VALUES (2, 27, 'second');
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> SELECT TEAMS.EmployeeNO, TEAMS.TEAMNO, PENALTIES.PAYMENTNO
-> FROM TEAMS LEFT OUTER JOIN PENALTIES
-> ON TEAMS.EmployeeNO = PENALTIES.EmployeeNO
-> WHERE DIVISION = 'second';
+------------+--------+-----------+
| EmployeeNO | TEAMNO | PAYMENTNO |
+------------+--------+-----------+
| 27 | 2 | 3 |
| 27 | 2 | 8 |
+------------+--------+-----------+
2 rows in set (0.00 sec)
mysql>
mysql>
mysql> SELECT TEAMS.EmployeeNO, TEAMS.TEAMNO, PENALTIES.PAYMENTNO
-> FROM TEAMS LEFT OUTER JOIN PENALTIES
-> ON TEAMS.EmployeeNO = PENALTIES.EmployeeNO
-> AND DIVISION = 'second';
+------------+--------+-----------+
| EmployeeNO | TEAMNO | PAYMENTNO |
+------------+--------+-----------+
| 6 | 1 | NULL |
| 27 | 2 | 3 |
| 27 | 2 | 8 |
+------------+--------+-----------+
3 rows in set (0.00 sec)
mysql>
mysql> drop table teams;
Query OK, 0 rows affected (0.00 sec)
mysql> drop table PENALTIES;
Query OK, 0 rows affected (0.00 sec)
Related examples in the same category