Cross Join Tables in a Specific Database
This section introduces you to the cross join between two tables. The cross join operation retrieves data between two tables as a Cartesian product of set theory in mathematics. Each row will get multiplied by other rows. If one table has three rows and the second row has two rows, then the cartesian of two table will be six. See brief description below:
Cross Join: This is a type of join table operation. It is a same as inner and outer join operation. The cross join is used to retrieve data from tables as Cartesian product format of set theory in mathematics. All rows are shown to be multiply by to another tables' rows.
Description of program:
First of all this program establishes the connection, after that the cross join operation will be performed between two tables. Both tables hold some specific fields and it's values. While you retrieve data in cross join format, it shows that the each row will get multiply by other rows.
Description of code:
SELECT *FROM employee, Emp_sal :
This code is used to retrieve data form both tables as Cartesian product
format (multiply the field to each other).
Here is the code of program:
import java.sql.*; public class CrossJoinTable{ public static void main(String[] args) { System.out.println("Natural Left 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"+","+"Emp_sal"); //Cross 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(); } } }
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 CrossJoinTable.java C:\vinod\jdbc\jdbc\jdbc-mysql>java CrossJoinTable Natural Left Join Tables Example! Emp_name Emp_ed Emp_sal santosh 2 8000 santosh 2 4500 deepak 10 8000 deepak 10 4500 Aman 13 8000 Aman 13 4500 |