CONTENTS I. JOINING APPLI ANCES / TABLES 2 II. DATAPLATE ...
Chapter 04 Joining Tables
Transcript of Chapter 04 Joining Tables
-
8/10/2019 Chapter 04 Joining Tables
1/4
chapter 4: joining Tables( retreive data from more than one table )---------------------------------------------------------------------What is join ?--------------1)cross Product:----------------Example:---------select empno,ename,sal,job,dname, locfrom emp , dept ;
select empno , sal, job , dname , locfrom emp cross join dept ;
2)Equi-join (inner join)( get only matched rows)---------------------------------------------------2.1 )Example:................select empno , ename , sal, job , dname , locfrom emp , deptwhere emp.deptno = dept.deptno ;
2.2 Natural Example-------------------
select empno , ename , sal, job , dname , locfrom emp natural join dept ;
2.3 Using Example-----------------
select empno , ename , sal, job , dname , locfrom emp join deptusing ( deptno );
2.4) on Example---------------select empno , ename , sal, job , dname , loc
from emp join depton ( emp.deptno=dept.deptno );
3)non-equijoin--------------select empno , ename , job , sal , grade , losal , hisalfrom emp , salgradewhere sal between losal and hisal ;
select empno , ename , job , sal , grade , losal , hisalfrom emp join salgradeon (sal between losal and hisal );
4) outer join (get matched and not matched rows):-------------------------------------------------4.1 ) left outer join-----------------------select empno , ename , dname , locfrom emp left outer join depton (emp.deptno = dept.deptno) ;
4.2) right outer join----------------------
-
8/10/2019 Chapter 04 Joining Tables
2/4
select empno , ename , dname , locfrom emp right outer join depton (emp.deptno = dept.deptno) ;
4.3 ) full outer join---------------------select empno , ename , dname , locfrom emp full outer join depton (emp.deptno = dept.deptno) ;
select empno , ename , sal, job , dname , locfrom emp , deptwhere ( emp.deptno (+) = dept.deptno );
select empno , ename , sal, job , dname , locfrom emp , deptwhere ( emp.deptno = dept.deptno (+) );
5) Self join :-------------select w.empno , w.ename , w.job , w.sal , w.mgr , m.ename as manager_namefrom emp w join emp mon ( w.mgr = m.empno ) ;
select w.empno , w.ename , w.job , w.sal , w.mgr , m.ename as manager_namefrom emp w left outer join emp mon ( w.mgr = m.empno ) ;
6) joining more than two tables:---------------------------------select first_name , last_name , department_name , city , street_addressfrom employees join departments on (employees.department_id =departments.department_id) join locations on (departments.location_id = locations.location_id) ;
to join n tables you need n-1 join condidtion .
7) additional conditions :--------------------------select empno , ename , sal, job , dname , locfrom emp natural join deptwhere job = 'SALESMAN' ;
select empno , ename , sal, job , dname , locfrom emp join deptusing ( deptno )where sal > 2000
select empno , ename , sal, job , dname , loc
from emp join depton ( emp.deptno=dept.deptno )and emp.deptno = 30 ;
select empno , ename , sal, job , dname , locfrom emp , deptwhere ( emp.deptno=dept.deptno )and emp.deptno = 30 ;
********************************************************************************
-
8/10/2019 Chapter 04 Joining Tables
3/4
*using sets:-----------
syntax:--------
a = { 1 ,2, 3 }b = { 2, 4, 5 }
a union b = { 1,2,3,4,5}a union all b = { 1,2,3,2,4,5}a intersect b = {2}a minus b = {1,3}
select statement 1union | union all | intersect | minusselect statement 2
Example:--------select empno , enamefrom empunion
select deptno , dnamefrom dept ;
select empno , ename , jobfrom empMinusselect deptno , dname ,locfrom dept ;
select empno , ename , jobfrom empintersectselect deptno , dname ,loc
from dept ;
Matching columns-----------------select empno , ename , salfrom empunionselect deptno , dname ,0from dept ;
select empno , ename , ''from empunion
select deptno , dname ,locfrom dept ;
order by certain column-----------------------select empno , ename , salfrom empunionselect deptno , dname , 0from dept
-
8/10/2019 Chapter 04 Joining Tables
4/4
order by ename////////////////////////////////////////////////////////END////////////////////////////////////////////////////////////////