# Cartesian product using JOINs

Let’s see what happens if we skip the `ON`

clause from a simple `JOIN`

query, where we want to display `name of students`

and `name of courses`

.

Notice the result. It is comprised of all possible combinations of a student and a course. So each of the `25`

`students`

, is paired with each of the `13`

`courses`

, producing a total of `25 * 13 = 325`

rows in the results. This kind of a result, which produces all possible combinations of results from two or more tables, in the absence of a matching criteria, (in this case, an `ON`

clause) is called a `CARTESIAN PRODUCT`

.

Let’s turn the above feature into a problem we can solve. Let’s say we want to display `all possible combinations of student names and course names`

, and a `boolean result (0/1) against each combination if the student is enrolled in the course`

.