Joining tables
While examining the GROUP BY
clause, we joined two tables into one resultset. This is a common operation when working with relational databases, because a table is generally correlated with other tables. The statement that allows us to do so is JOIN
.
There are several types of joins:
CROSS JOIN
INNER JOIN
LEFT JOIN
RIGHT JOIN
The cross join operation
A CROSS JOIN
is an operation that associates all the rows from the left table to all the rows in the right table. The number of rows in the resultset is the product of the number of rows in the left table multiplied by the number of rows in the second table, which is usually a huge number. This operation is very rarely used, and it is very expensive.
The following is an example of CROSS JOIN
. Imagine we have two tables, both containing the numbers from 1
to 3
:
MariaDB [test]> SELECT a.c, b.c FROM t1 a CROSS JOIN t2 b; +------+------+ | c | c | +------+------+ | 1 | 1 | | 2 | 1 | | 3 | 1 | | 1 | ...