Join tables and order by columns from different tables : Table Alias « Table Joins « Oracle PL/SQL Tutorial






SQL>
SQL> create table employees(
  2    empno      NUMBER(4)
  3  , ename      VARCHAR2(8)
  4  , init       VARCHAR2(5)
  5  , job        VARCHAR2(8)
  6  , mgr        NUMBER(4)
  7  , bdate      DATE
  8  , msal       NUMBER(6,2)
  9  , comm       NUMBER(6,2)
 10  , deptno     NUMBER(2) ) ;

Table created.

SQL>
SQL>
SQL> insert into employees values(1,'Jason',  'N',  'TRAINER', 2,   date '1965-12-18',  800 , NULL,  10);

1 row created.

SQL> insert into employees values(2,'Jerry',  'J',  'SALESREP',3,   date '1966-11-19',  1600, 300,   10);

1 row created.

SQL> insert into employees values(3,'Jord',   'T' , 'SALESREP',4,   date '1967-10-21',  1700, 500,   20);

1 row created.

SQL> insert into employees values(4,'Mary',   'J',  'MANAGER', 5,   date '1968-09-22',  1800, NULL,  20);

1 row created.

SQL> insert into employees values(5,'Joe',    'P',  'SALESREP',6,   date '1969-08-23',  1900, 1400,  30);

1 row created.

SQL> insert into employees values(6,'Black',  'R',  'MANAGER', 7,   date '1970-07-24',  2000, NULL,  30);

1 row created.

SQL> insert into employees values(7,'Red',    'A',  'MANAGER', 8,   date '1971-06-25',  2100, NULL,  40);

1 row created.

SQL> insert into employees values(8,'White',  'S',  'TRAINER', 9,   date '1972-05-26',  2200, NULL,  40);

1 row created.

SQL> insert into employees values(9,'Yellow', 'C',  'DIRECTOR',10,  date '1973-04-27',  2300, NULL,  20);

1 row created.

SQL> insert into employees values(10,'Pink',  'J',  'SALESREP',null,date '1974-03-28',  2400, 0,     30);

1 row created.

SQL>
SQL>
SQL> create table departments
  2  ( deptno NUMBER(2)
  3  , dname  VARCHAR2(10)
  4  , location VARCHAR2(20)
  5  , mgr    NUMBER(4)
  6  ) ;

Table created.

SQL>
SQL> insert into departments values (10,'ACCOUNTING','NEW YORK' ,  2);

1 row created.

SQL> insert into departments values (20,'TRAINING',  'VANCOUVER',  3);

1 row created.

SQL> insert into departments values (30,'SALES',     'CHICAGO',    4);

1 row created.

SQL> insert into departments values (40,'HR',        'BOSTON',     5);

1 row created.

SQL>
SQL>
SQL> select d.deptno, d.location
  2  ,      e.ename, e.init
  3  from   employees e, departments d
  4  where  e.deptno = d.deptno
  5  order  by d.deptno, e.ename;

    DEPTNO LOCATION             ENAME    INIT
---------- -------------------- -------- -----
        10 NEW YORK             Jason    N
        10 NEW YORK             Jerry    J
        20 VANCOUVER            Jord     T
        20 VANCOUVER            Mary     J
        20 VANCOUVER            Yellow   C
        30 CHICAGO              Black    R
        30 CHICAGO              Joe      P
        30 CHICAGO              Pink     J
        40 BOSTON               Red      A
        40 BOSTON               White    S

10 rows selected.

SQL>
SQL>
SQL> drop table employees;

Table dropped.

SQL>
SQL> drop table departments;

Table dropped.

SQL>








7.2.Table Alias
7.2.1.List table from two tables without indicating column owner
7.2.2.List table from two tables and specifying its column owner
7.2.3.Join tables and order by columns from different tables
7.2.4.Calculation between column from different tables
7.2.5.Join two tables and combine three tables
7.2.6.Supplying Table Aliases
7.2.7.Use * to reference all columns from a table
7.2.8.Reference column without table name during table join