Join tables in the specific database

Consider a case, where there is too many records and
tables in a
database. Now to retrieve a particular row from a table or database is a very time
consuming.
So, what the alternative to that, divide the table in more than one table. In this section, we are going to
see how to join
two or more tables in a specific database. For this you need to have two or more table in
the database. If two or more tables are available in the database then Join
operation is performed otherwise not. Firstly, it is important to know about the join
operation. Join operation provides the facility to combine records between two
or more tables. It relates one table to another. Joining is the type of query
for retrieving data two or more table in specific database. You can join the
tables various types like: Natural join, Natural left join, Natural right join
and so on. Here we are providing you an example with code that joins two tables
through the NATURAL JOIN. Brief information given below:
Join: A join provides the facility to connect
two tables are merged to each other according to field that is common and
creates a new virtual table.
NATURAL JOIN: It is a type of join that retrieves
data within specified tables to specific field is matched.
NATURAL LEFT JOIN: In this operation both tables
are merged to each other according to common fields but the priority is given to
the first table in database.
NATURAL RIGHT JOIN: It also same as Natural left
join but it retrieves the data from the second table in the database.
Description of program:
First of all, this program establishes the connection
with MySQL database through the JDBC driver. After establishing the
connection the NATURAL JOIN operation is performed within two tables say: employee and Emp_sal. The employee table holds the Emp_ed and Emp_name
fields and Emp_sal table contains the Emp_name and Emp_sal. We are making use of
the emp_name to join the tables.
Description of code:
SELECT *FROM employee NATURAL JOIN Emp_sal:
This code is used to show all fields that matches in the both tables on the
basis of Emp_name field.
Here is the code of program:
import java.sql.*;
public class NatJoinTable{
public static void main(String[] args) {
System.out.println("Natural Join Tables Example!");
Connection con = null;
try{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection
("jdbc:mysql://localhost:3306/jdbctutorial","root","root");
try{
Statement st = con.createStatement();
ResultSet res = st.executeQuery
("SELECT *FROM "+"employee"+" NATURAL JOIN "+"Emp_sal"); //Join two tables
System.out.println("Emp_name" + "\t" + "Emp_ed" + "\t" + "Emp_sal");
while(res.next()){
String name = res.getString("Emp_name");
int ed = res.getInt("Emp_ed");
int sal = res.getInt("Emp_sal");
System.out.println(name + "\t\t" + ed + "\t" + sal);
}
}
catch (SQLException s){
System.out.println("SQL statement is not executed!");
}
}
catch (Exception e){
e.printStackTrace();
}
}
}
|
Download this example.
Table:-
employee:
| Emp_ed |
Emp_name |
| 2
10
13 |
santosh
deepak
Aman |
Table:- Emp_sal:
| Emp_name |
Emp_sal |
| Aman
santosh |
8000
4500 |
Output of program:
C:\vinod\jdbc\jdbc\jdbc-mysql>javac NatJoinTable.java
C:\vinod\jdbc\jdbc\jdbc-mysql>java NatJoinTable
Natural Join Tables Example!
Emp_name Emp_ed Emp_sal
santosh 2
4500
Aman 13
8000 |

|
Current Comments
0 comments so far (post your own) View All Comments Latest 10 Comments: