Mega Code Archive

 
Categories / Oracle PLSQL / Table Joins
 

Cross joins Demo

SQL> CREATE TABLE Employee(Employee_ID NUMBER(4) NOT NULL,   2                   Employee_Name VARCHAR2(10),   3                   JOB VARCHAR2(9),   4                   Manager_ID NUMBER(4),   5                   Start_Date DATE,   6                   Salary NUMBER(7, 2),   7                   COMM NUMBER(7, 2),   8                   Deparment_ID NUMBER(2)   9  ); Table created. SQL> SQL> INSERT INTO Employee VALUES (7369, 'SMITH',  'CLERK',     7902, TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20); 1 row created. SQL> INSERT INTO Employee VALUES (7499, 'ALLEN',  'SALESMAN',  7698, TO_DATE('20-FEB-1981', 'DD-MON-YYYY'), 1600,  300, 30); 1 row created. SQL> INSERT INTO Employee VALUES (7521, 'WARD',   'SALESMAN',  7698, TO_DATE('22-FEB-1981', 'DD-MON-YYYY'), 1250,  500, 30); 1 row created. SQL> INSERT INTO Employee VALUES (7566, 'JONES',  'MANAGER',   7839, TO_DATE('2-APR-1981', 'DD-MON-YYYY'),  2975, NULL, 20); 1 row created. SQL> INSERT INTO Employee VALUES (7654, 'MARTIN', 'SALESMAN',  7698, TO_DATE('28-SEP-1981', 'DD-MON-YYYY'), 1250, 1400, 30); 1 row created. SQL> INSERT INTO Employee VALUES (7698, 'BLAKE',  'MANAGER',   7839, TO_DATE('1-MAY-1981', 'DD-MON-YYYY'),  2850, NULL, 30); 1 row created. SQL> INSERT INTO Employee VALUES (7782, 'CLARK',  'MANAGER',   7839, TO_DATE('9-JUN-1981', 'DD-MON-YYYY'),  2450, NULL, 10); 1 row created. SQL> INSERT INTO Employee VALUES (7788, 'SCOTT',  'ANALYST',   7566, TO_DATE('09-DEC-1982', 'DD-MON-YYYY'), 3000, NULL, 20); 1 row created. SQL> INSERT INTO Employee VALUES (7839, 'KING',   'PRESIDENT', NULL, TO_DATE('17-NOV-1981', 'DD-MON-YYYY'), 5000, NULL, 10); 1 row created. SQL> INSERT INTO Employee VALUES (7844, 'TURNER', 'SALESMAN',  7698, TO_DATE('8-SEP-1981', 'DD-MON-YYYY'),  1500,    0, 30); 1 row created. SQL> INSERT INTO Employee VALUES (7876, 'ADAMS',  'CLERK',     7788, TO_DATE('12-JAN-1983', 'DD-MON-YYYY'), 1100, NULL, 20); 1 row created. SQL> INSERT INTO Employee VALUES (7900, 'JAMES',  'CLERK',     7698, TO_DATE('3-DEC-1981', 'DD-MON-YYYY'),   950, NULL, 30); 1 row created. SQL> INSERT INTO Employee VALUES (7902, 'FORD',   'ANALYST',   7566, TO_DATE('3-DEC-1981', 'DD-MON-YYYY'),  3000, NULL, 20); 1 row created. SQL> INSERT INTO Employee VALUES (7934, 'MILLER', 'CLERK',     7782, TO_DATE('23-JAN-1982', 'DD-MON-YYYY'), 1300, NULL, 10); 1 row created. SQL> SQL> CREATE TABLE Department(Department_ID NUMBER(2),   2                          Department_Name VARCHAR2(14),   3                          Location VARCHAR2(13)   4  ); Table created. SQL> SQL> INSERT INTO Department VALUES (10, 'ACCOUNTING', 'NEW YORK'); 1 row created. SQL> INSERT INTO Department VALUES (20, 'RESEARCH',   'DALLAS'); 1 row created. SQL> INSERT INTO Department VALUES (30, 'SALES',      'CHICAGO'); 1 row created. SQL> INSERT INTO Department VALUES (40, 'OPERATIONS', 'BOSTON'); 1 row created. SQL> SQL> select * from Employee; EMPLOYEE_ID EMPLOYEE_N JOB       MANAGER_ID START_DAT     SALARY       COMM DEPARMENT_ID ----------- ---------- --------- ---------- --------- ---------- ---------- ------------        7369 SMITH      CLERK           7902 17-DEC-80        800                      20        7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300           30        7521 WARD       SALESMAN        7698 22-FEB-81       1250        500           30        7566 JONES      MANAGER         7839 02-APR-81       2975                      20        7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400           30        7698 BLAKE      MANAGER         7839 01-MAY-81       2850                      30        7782 CLARK      MANAGER         7839 09-JUN-81       2450                      10        7788 SCOTT      ANALYST         7566 09-DEC-82       3000                      20        7839 KING       PRESIDENT            17-NOV-81       5000                      10        7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0           30        7876 ADAMS      CLERK           7788 12-JAN-83       1100                      20 EMPLOYEE_ID EMPLOYEE_N JOB       MANAGER_ID START_DAT     SALARY       COMM DEPARMENT_ID ----------- ---------- --------- ---------- --------- ---------- ---------- ------------        7900 JAMES      CLERK           7698 03-DEC-81        950                      30        7902 FORD       ANALYST         7566 03-DEC-81       3000                      20        7934 MILLER     CLERK           7782 23-JAN-82       1300                      10 14 rows selected. SQL> select * from Department; DEPARTMENT_ID DEPARTMENT_NAM LOCATION ------------- -------------- -------------            10 ACCOUNTING     NEW YORK            20 RESEARCH       DALLAS            30 SALES          CHICAGO            40 OPERATIONS     BOSTON SQL> SQL> SQL> -- Cross-joins SQL> SQL> SELECT e.Employee_ID, d.Department_ID   2  FROM Employee e, Department d; EMPLOYEE_ID DEPARTMENT_ID ----------- -------------        7369            10        7499            10        7521            10        7566            10        7654            10        7698            10        7782            10        7788            10        7839            10        7844            10        7876            10 EMPLOYEE_ID DEPARTMENT_ID ----------- -------------        7900            10        7902            10        7934            10        7369            20        7499            20        7521            20        7566            20        7654            20        7698            20        7782            20        7788            20 EMPLOYEE_ID DEPARTMENT_ID ----------- -------------        7839            20        7844            20        7876            20        7900            20        7902            20        7934            20        7369            30        7499            30        7521            30        7566            30        7654            30 EMPLOYEE_ID DEPARTMENT_ID ----------- -------------        7698            30        7782            30        7788            30        7839            30        7844            30        7876            30        7900            30        7902            30        7934            30        7369            40        7499            40 EMPLOYEE_ID DEPARTMENT_ID ----------- -------------        7521            40        7566            40        7654            40        7698            40        7782            40        7788            40        7839            40        7844            40        7876            40        7900            40        7902            40 EMPLOYEE_ID DEPARTMENT_ID ----------- -------------        7934            40 56 rows selected. SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> drop table Department cascade constraints; Table dropped. SQL> drop table Employee cascade constraints; Table dropped. SQL> SQL>