Join using and join on
SQL>
SQL> create table emp
2 ( empno NUMBER(4) constraint E_PK primary key
3 , ename VARCHAR2(8)
4 , init VARCHAR2(5)
5 , job VARCHAR2(8)
6 , mgr NUMBER(4)
7 , bdate DATE
8 , sal NUMBER(6,2)
9 , comm NUMBER(6,2)
10 , deptno NUMBER(2) default 10
11 ) ;
Table created.
SQL> insert into emp values(1,'Tom','N', 'TRAINER', 13,date '1965-12-17', 800 , NULL, 20);
1 row created.
SQL> insert into emp values(2,'Jack','JAM', 'Tester',6,date '1961-02-20', 1600, 300, 30);
1 row created.
SQL> insert into emp values(3,'Wil','TF' , 'Tester',6,date '1962-02-22', 1250, 500, 30);
1 row created.
SQL> insert into emp values(4,'Jane','JM', 'Designer', 9,date '1967-04-02', 2975, NULL, 20);
1 row created.
SQL> insert into emp values(5,'Mary','P', 'Tester',6,date '1956-09-28', 1250, 1400, 30);
1 row created.
SQL> insert into emp values(6,'Black','R', 'Designer', 9,date '1963-11-01', 2850, NULL, 30);
1 row created.
SQL> insert into emp values(7,'Chris','AB', 'Designer', 9,date '1965-06-09', 2450, NULL, 10);
1 row created.
SQL> insert into emp values(8,'Smart','SCJ', 'TRAINER', 4,date '1959-11-26', 3000, NULL, 20);
1 row created.
SQL> insert into emp values(9,'Peter','CC', 'Designer',NULL,date '1952-11-17', 5000, NULL, 10);
1 row created.
SQL> insert into emp values(10,'Take','JJ', 'Tester',6,date '1968-09-28', 1500, 0, 30);
1 row created.
SQL> insert into emp values(11,'Ana','AA', 'TRAINER', 8,date '1966-12-30', 1100, NULL, 20);
1 row created.
SQL> insert into emp values(12,'Jane','R', 'Manager', 6,date '1969-12-03', 800 , NULL, 30);
1 row created.
SQL> insert into emp values(13,'Fake','MG', 'TRAINER', 4,date '1959-02-13', 3000, NULL, 20);
1 row created.
SQL> insert into emp values(14,'Mike','TJA','Manager', 7,date '1962-01-23', 1300, NULL, 10);
1 row created.
SQL>
SQL> create table departments
2 ( deptno NUMBER(2) constraint D_PK primary key
3 , dname VARCHAR2(10)
4 , location VARCHAR2(8)
5 , mgr NUMBER(4)
6 ) ;
Table created.
SQL>
SQL> insert into departments values (10,'ACCOUNTING','NEW YORK',7);
1 row created.
SQL> insert into departments values (20,'TRAINING', 'DALLAS', 4);
1 row created.
SQL> insert into departments values (30,'SALES', 'CHICAGO', 6);
1 row created.
SQL> insert into departments values (40,'HR', 'BOSTON', 9);
1 row created.
SQL>
SQL> select e.empno
2 , e.ENAME
3 , e.init
4 , d.dname
5 , d.location
6 , m.ENAME as Designer
7 from emp e
8 join
9 departments d using (deptno)
10 join
11 emp m on (m.empno = d.mgr);
EMPNO ENAME INIT DNAME LOCATION DESIGNER
---------- -------- ----- ---------- -------- --------
1 Tom N TRAINING DALLAS Jane
2 Jack JAM SALES CHICAGO Black
3 Wil TF SALES CHICAGO Black
4 Jane JM TRAINING DALLAS Jane
5 Mary P SALES CHICAGO Black
6 Black R SALES CHICAGO Black
7 Chris AB ACCOUNTING NEW YORK Chris
8 Smart SCJ TRAINING DALLAS Jane
9 Peter CC ACCOUNTING NEW YORK Chris
10 Take JJ SALES CHICAGO Black
11 Ana AA TRAINING DALLAS Jane
12 Jane R SALES CHICAGO Black
13 Fake MG TRAINING DALLAS Jane
14 Mike TJA ACCOUNTING NEW YORK Chris
14 rows selected.
SQL> drop table emp;
Table dropped.
SQL> drop table departments;
Table dropped.
SQL>
Related examples in the same category