Easiest way to explain is with an example:

```
mysql> select * from table_a left join table_b on col_a=col_b;
+-------+-------+
| col_a | col_b |
+-------+-------+
|     1 |  NULL |
|     2 |  NULL |
|     3 |     3 |
|     4 |     4 |
+-------+-------+

mysql> select * from table_a right join table_b on col_a=col_b;
+-------+-------+
| col_a | col_b |
+-------+-------+
|     3 |     3 |
|     4 |     4 |
|  NULL |     5 |
|  NULL |     6 |
+-------+-------+

```

But how do I get this?

```
mysql> select * from table_a ???? table_b on col_a=col_b;
+-------+-------+
| col_a | col_b |
+-------+-------+
|     1 |  NULL |
|     2 |  NULL |
|     3 |     3 |
|     4 |     4 |
|  NULL |     5 |
|  NULL |     6 |
+-------+-------+

```

---

Structure for @Abe:

```
CREATE TABLE IF NOT EXISTS `table_a` (
  `col_a` int(11) NOT NULL,
  PRIMARY KEY (`col_a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

INSERT INTO `table_a` (`col_a`) VALUES
(1),
(2),
(3),
(4);

CREATE TABLE IF NOT EXISTS `table_b` (
  `col_b` int(11) NOT NULL,
  PRIMARY KEY (`col_b`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

INSERT INTO `table_b` (`col_b`) VALUES
(3),
(4),
(5),
(6);

```