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
students, is paired with each of the
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
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.