MySQL JOINS

MySQL JOINS

MySQL JOINS are used with SELECT statement. It is used to retrieve data from multiple tables. It is performed whenever you need to fetch records from two or more tables.

There are three types of MySQL joins:

  • MySQL INNER JOIN (“or sometimes called simple join”)
  • MySQL LEFT OUTER JOIN (“or sometimes called LEFT JOIN”)
  • MySQL RIGHT OUTER JOIN (“or sometimes called RIGHT JOIN”)

MySQL Inner JOIN (“Simple Join”)

The MySQL INNER JOIN is used to return all rows from multiple tables where the join condition is satisfied. It is the most common type of join.

 

Syntax:

  1. SELECT columns
  2. FROM table1
  3. INNER JOIN table2
  4. ON table1.column = table2.column;

Image representation:

mysql join 1

Let’s take an example:

Consider two tables “officers” and “students”, having the following data.

mysql join 2

Execute the following query:

  1. SELECT officers.officer_name, officers.address, students.course_name
  2. FROM officers
  3. INNER JOIN students
  4. ON officers.officer_id = students.student_id;

Output:

mysql join 3

MySQL Left Outer Join

The LEFT OUTER JOIN returns all rows from the left hand table specified in the ON condition and only those rows from the other table where the join condition is fulfilled.

Syntax:

  1. SELECT columns
  2. FROM table1
  3. LEFT [OUTERJOIN table2
  4. ON table1.column = table2.column;

Image representation:

mysql join 4

Let’s take an example:

Consider two tables “officers” and “students”, having the following data.

mysql join 5

Execute the following query:

  1. SELECT  officers.officer_name, officers.address, students.course_name
  2. FROM officers
  3. LEFT JOIN students
  4. ON officers.officer_id = students.student_id;

Output:

mysql join 6

MySQL Right Outer Join

The MySQL Right Outer Join returns all rows from the RIGHT-hand table specified in the ON condition and only those rows from the other table where he join condition is fulfilled.

Syntax:

  1. SELECT columns
  2. FROM table1
  3. RIGHT [OUTERJOIN table2
  4. ON table1.column = table2.column;

Image representation:

mysql join 7

Let’s take an example:

Consider two tables “officers” and “students”, having the following data.

mysql join 8

Execute the following query:

  1. SELECT officers.officer_name, officers.address, students.course_name, students.student_name
  2. FROM officers
  3. RIGHT JOIN students
  4. ON officers.officer_id = students.student_id;

Output:

mysql join 9

For any query or issue, feel free to discuss on http://discuss.eduguru.in