Skip to main content

SQL JOIN with Examples

SQL JOIN

  • A SQL JOIN combines records from two tables.
  • A JOIN locates related column values in the two tables.
  • A query can contain zero, one, or multiple JOIN operations.
  • INNER JOIN is the same as JOIN; the keyword INNER is optional.

Different types of JOINs

  • (INNER) JOIN: Select records that have matching values in both tables.
  • LEFT (OUTER) JOIN: Select records from the first (left-most) table with matching right table records.
  • RIGHT (OUTER) JOIN: Select records from the second (right-most) table with matching left table records.
  • FULL (OUTER) JOIN: Selects all records that match either left or right table records.
   

The SQL JOIN syntax



The general syntax is:
  1. SELECT column-names FROM table-name1 JOIN table-name2 ON column-name1 = column-name2 WHERE condition


The general syntax with INNER is:
  1. SELECT column-names FROM table-name1 INNER JOIN table-name2 ON column-name1 = column-name2 WHERE condition

SQL JOIN Examples

Table1

mysql> select *from customers; select *from orders;
+------------+---------------+-------------+---------+
| customerid | customername  | contactname | country |
+------------+---------------+-------------+---------+
| 1          | Subham Ball   | joy         | india   |
| 2          | Mike Wooksahi | Mike        | maxico  |
| 3          | jon Wooksahi  | Jon         | maxico  |
+------------+---------------+-------------+---------+
3 rows in set (0.00 sec)

Table2



+---------+------------+------------+
| orderid | customerid | orderdate  |
+---------+------------+------------+
| 10308   | 2          | 1996-09-18 |
| 10309   | 37         | 1996-09-19 |
| 10310   | 77         | 1996-09-20 |
+---------+------------+------------+
3 rows in set (0.00 sec)

 1) Example of join 

mysql> select orders.orderid, customers.customername, orders.orderdate from orders inner join customers on orders.customerid = customers.customerid;
+---------+---------------+------------+
| orderid | customername  | orderdate  |
+---------+---------------+------------+
| 10308   | Mike Wooksahi | 1996-09-18 |
+---------+---------------+------------+
1 row in set (0.00 sec)

2) Example of join with order by Clause



mysql> select orders.orderid, customers.customername, orders.orderdate from orders inner join customers on orders.customerid = customers.customerid order by customers.customername;
+---------+---------------+------------+
| orderid | customername  | orderdate  |
+---------+---------------+------------+
| 10308   | Mike Wooksahi | 1996-09-18 |
+---------+---------------+------------+
1 row in set (0.00 sec)

Comments

Popular posts from this blog

important question on Entity Relationship Model(ER Model)

5)A university registrar’s office maintains data about the following entities: (a) courses, including number, title, credits, syllabus, and prerequisites; (b) course offerings, including course number, year, semester, section number, instructor(s), timings, and classroom; (c) students, including student-id, name, and program; and (d) instructors, including identification number, name, department, and title. Further, the enrollment of students in courses and grades awarded to students in each course they are enrolled for must be appropriately modeled. Construct an E-R diagram for the registrar’s office. Document all assumptions that you make about the mapping constraints. Answer:   In the answer given here, the main entity sets are student, course, course-offering, and instructor. The entity set course-offering is a weak entity set dependent on course. The assumptions made are : a class meets only at one particular place and time. This E - R diagram cannot model a c...

Library Management System DataFlow Diagram

Library Management System DataFlow Diagram 1) Zero Level DFD 2) 1st level DFD and 2nd level DFD

how to Install Numpy, Pandas and matplotlib on ubuntu 18.04 and Linux Mint

Install Python, NumPy,Matplotlib for Python 3 on Ubuntu 18.04, Linux Mint, Debian Linux. This is a short article about installing Numpy, Pandas , Matplotlib, Python3 on the latest Ubuntu 18.04 LTS, Linux Mint, Debian Linux which comes with Python 3.6.5. Let’s start by making sure we have an updated system: 1 sudo apt update 2 sudo apt upgrade Now, let’s install NumPy, Pandas,Matplotlib : sudo apt-get install python-pip sudo pip install numpy sudo pip install pandas sudo pip install matplotlib Test numpy : Open up a Terminal in Your Linux Operating System by running the following: python3 At the Terminal, type the following: >>> import numpy as np >>> np.__version__ '1.13.3'   Test Pandas : Open up a Terminal in Your Linux Operating System by running the following: python3 At the Terminal, type the following: >>> import pandas as pd >>> pd.__version__ '0.22.0'   Test Matpl...