Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SQL> cl scr
SQL> DESC Students
Name
Null?
----------------------------------------- -------STUDNO
FNAME
LNAME
DOB
DOJ
FEES
GENDER
INSERTBY
Type
---------------------------NUMBER(6)
VARCHAR2(30)
VARCHAR2(30)
DATE
DATE
NUMBER(7,2)
VARCHAR2(1)
VARCHAR2(10)
8
9
10
11*
SQL> /
25000,
'M',
'SATISH'
)
1 row created.
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
'1237A',
4
'RAMANA',
5
'KUMAR',
6
'29-MAR-80',
7
'15-APR-95',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> /
'1237A',
*
ERROR at line 3:
ORA-01722: invalid number
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1237,
4
'RAMANA',
5
KUMAR,
6
'29-MAR-80',
7
'15-APR-95',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> /
KUMAR,
*
ERROR at line 5:
ORA-00984: column not allowed here
SQL> ED
Wrote file afiedt.buf
1
2
3
4
'RAMANA',
5
'KUMAR',
6
'29-MAR-80',
7
'15-APR-95',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1237,
4
'RAMANA',
5
'KUMAR',
6
'29-MAR-80',
7
'15-APR-95',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> /
1 row created.
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1238,
4
'RAJA',
5
'KUMAR',
6
'29-MARCH-80',
7
'15-APRIL-95',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> /
1 row created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL> /
'SATISH'
)
1 row created.
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240,
4
'RAVI',
5
'KUMAR',
6
'29MARCH1980',
7
'15APRIL2010',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> /
1 row created.
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240,
4
'RAVI',
5
'KUMAR',
6
'29-03-1980',
7
'15-04-2010',
8
25000,
9
'M',
10
'SATISH'
11*
)
SQL> /
'29-03-1980',
*
ERROR at line 6:
ORA-01843: not a valid month
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
'15-APR-2010',
8
25000,
9
'MALE',
10
'SATISH',
11*
)
SQL> /
ERROR:
ORA-01756: quoted string not properly terminated
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240,
4
'RAVI'
5
'KUMAR',
6
'29-MAR-1980',
7
'15-APR-2010',
8
25000,
9
'MALE',
10
'SATISH',
11*
)
SQL> /
'KUMAR',
*
ERROR at line 5:
ORA-00917: missing comma
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240,
4
'RAVI'
5
'KUMAR',
6
29-MAR-1980',
7
'15-APR-2010',
8
25000,
9
'MALE',
10
'SATISH',
11*
)
SQL> /
ERROR:
ORA-01756: quoted string not properly terminated
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL> /
'RAVI'
'KUMAR',
'29-MAR-1980',
'15-APR-2010',
25000,
'MALE',
'SATISH',
)
'KUMAR',
*
ERROR at line 5:
ORA-00917: missing comma
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240,
4
'RAVI',
5
'KUMAR',
6
'29-MAR-1980',
7
'15-APR-2010',
8
25000,
9
'MALE',
10
'SATISH',
11*
)
SQL> /
)
*
ERROR at line 11:
ORA-00936: missing expression
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240,
4
'RAVI'
5
'KUMAR',
6
'29-MAR-1980',
7
'15-APR-2010',
8
25000,
9
'MALE',
10
'SATISH',
11*
)
SQL> /
'KUMAR',
*
ERROR at line 5:
ORA-00917: missing comma
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240
4
,'RAVI'
5
'KUMAR'
6
,'29-MAR-1980'
7
,'15-APR-2010'
8
,25000
9
,'MALE'
10
,'SATISH'
11*
)
SQL> /
'KUMAR'
*
ERROR at line 5:
ORA-00917: missing comma
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO Students
2 VALUES(
3
1240
4
,'RAVI'
5
,'KUMAR'
6
,'29-MAR-1980'
7
,'15-APR-2010'
8
,25000
9
,'MALE'
10
,'SATISH'
11*
)
SQL> /
,'MALE'
*
ERROR at line 9:
ORA-12899: value too large for column "SCOTT"."STUDENTS"."GENDER" (actual: 4,
maximum: 1)
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL> /
,'SATISH'
)
1 row created.
SQL>
2
3
4
5
INSERT INTO
Students
(StudNo, Fname, Lname, DOJ, Gender)
VALUES
(1235, 'Raj', 'Kumar', '20-Feb-85', 'M');
1 row created.
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO
2 Students
3 (StudNo, Fname, Lname, DOJ, Gender)
4 VALUES
5* (1235, 'Raj', 'Kumar', 'M')
SQL> /
VALUES
*
ERROR at line 4:
ORA-00947: not enough values
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO
2 Students
3 (StudNo, Fname, Lname, DOJ, Gender)
4 VALUES
5* (1235, 'Raj', 'Kumar', '10-AUG-09', 'M', 'SATISH')
SQL> /
Students
*
ERROR at line 2:
ORA-00913: too many values
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
INSERT INTO
Students(StudNo, Fname, Lname, DOB, DOJ, Fees, Gender)
VALUES(1234, 'Krishna', NULL, NULL, '28-FEB-04', NULL, 'M')
/
1 row created.
SQL> SELECT * FROM Students;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
STUDNO FNAME
LNAME
---------- ------------------------------ -----------------------------DOB
DOJ
FEES G INSERTBY
--------- --------- ---------- - ---------1234 SAMPATH
KUMAR
29-JAN-80 30-MAR-95
25000 M SATISH
1235 SRINIVAS
29-MAR-80 15-APR-95
25000 M SATISH
SHARMA
1236 RAMANA
29-MAR-80 15-APR-95
25000 M SATISH
KUMAR
STUDNO FNAME
LNAME
---------- ------------------------------ -----------------------------DOB
DOJ
FEES G INSERTBY
--------- --------- ---------- - ---------1237 RAMANA
KUMAR
29-MAR-80 15-APR-95
25000 M SATISH
1238 RAJA
29-MAR-80 15-APR-95
25000 M SATISH
KUMAR
1239 RAMA
29-MAR-80 15-APR-10
25000 M SATISH
KUMAR
STUDNO FNAME
LNAME
---------- ------------------------------ -----------------------------DOB
DOJ
FEES G INSERTBY
--------- --------- ---------- - ---------1240 RAVI
KUMAR
29-MAR-80 15-APR-10
25000 M SATISH
1240 RAVI
29-MAR-80 15-APR-10
1235 Raj
20-FEB-85
KUMAR
25000 M SATISH
Kumar
M
STUDNO FNAME
LNAME
---------- ------------------------------ -----------------------------DOB
DOJ
FEES G INSERTBY
--------- --------- ---------- - ---------1234 Krishna
28-FEB-04
M
10 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> DESC Students
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Name
Null?
----------------------------------------- -------STUDNO
FNAME
LNAME
DOB
DOJ
FEES
GENDER
INSERTBY
Type
---------------------------NUMBER(6)
VARCHAR2(30)
VARCHAR2(30)
DATE
DATE
NUMBER(7,2)
VARCHAR2(1)
VARCHAR2(10)
FNAME
-----------SAMPATH
Raj
Krishna
LNAME
DOB
------------ --------KUMAR
29-JAN-80
Kumar
DOJ
FEES G INSERTBY
--------- ------ - ---------30-MAR-95 25000 M SATISH
20-FEB-85
M
28-FEB-04
M
FNAME
-----------SAMPATH
Raj
Krishna
Mohan
LNAME
DOB
------------ --------KUMAR
29-JAN-80
Kumar
DOJ
FEES G INSERTBY
--------- ------ - ---------30-MAR-95 25000 M SATISH
20-FEB-85
M
28-FEB-04
M
29-JUL-10 25000 M SCOTT
Enter
old
new
Enter
old
new
Enter
old
new
1 row created.
SQL> /
Enter value
old
4:
new
4:
Enter value
old
5:
new
5:
Enter value
old
6:
new
6:
Enter value
old
7:
new
7:
1 row created.
SQL> SELECT * FROm Students;
STUDNO
-----1234
1235
1234
1234
1234
1234
1235
1236
FNAME
-----------SAMPATH
Raj
Krishna
Mohan
Mohan
Mohan
RAVI
RAMANA
LNAME
DOB
------------ --------KUMAR
29-JAN-80
Kumar
KUMAR
DOJ
FEES G INSERTBY
--------- ------ - ---------30-MAR-95 25000 M SATISH
20-FEB-85
M
28-FEB-04
M
29-JUL-10 25000 M SCOTT
29-JUL-10 25000 M SCOTT
29-JUL-10 25000 M SCOTT
16-APR-80
25000
21-MAR-86
25000
8 rows selected.
SQL> SET VERIFY OFF
SQL> INSERT INTO Students
2 (StudNo, Fname, LName, Dob, Fees)
3 VALUES(
4
&StudNo,
5
'&Name',
6
&LastName,
7
'&DOB',
8
25000
9
) ;
Enter value for studno: 1237
Enter value for name: SAMPATH
Enter value for lastname: NULL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
for
for
for
for
for
studno: 1241
firstname: SRAVAN
lastname: NULL
dob: 23-NOV-88
gender: M
1 row created.
SQL> /
Enter value
Enter value
Enter value
Enter value
Enter value
for
for
for
for
for
studno: 1242
firstname: RAVI
lastname: KUMAR
dob: 24-DEC-86
gender: M
1 row created.
SQL> UNDEFINE Fees
SQL> /
Enter value for studno: 1243
Enter value for firstname: RAMANA
Enter value for lastname: KUMAR
Enter value for dob: 22-SEP-88
Enter value for fees: 15000
Enter value for gender: M
1 row created.
SQL> /
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Enter
Enter
Enter
Enter
Enter
value
value
value
value
value
for
for
for
for
for
studno: 1244
firstname: SRAVAN
lastname: NULL
dob: 30-MAR-88
gender: M
1 row created.
SQL> DEFINE
SQL> /
Enter value
Enter value
Enter value
Enter value
Enter value
Fees = 10000
for
for
for
for
for
studno: 1245
firstname: SRINIVAS
lastname: SHARMA
dob: 20-DEC-85
gender: M
1 row created.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
INSERT INTO
Students(StudNo, Fname, Lname, Dob, Doj, Fees, Gender)
Values(
&StudNo,
'&FirstName',
'&LastName',
'&DOB',
SYSDATE,
&&Fees,
'&Gender'
)
SPOOL OFF
SQL> cl scr
SQL> DESC Dept
Name
Null?
----------------------------------------- -------DEPTNO
NOT NULL
DNAME
LOC
Type
---------------------------NUMBER(2)
VARCHAR2(14)
VARCHAR2(13)
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
Type
---------------------------NUMBER
NUMBER
NUMBER
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
7698 BLAKE
30
MANAGER
7839 01-MAY-81
2850
7782 CLARK
10
MANAGER
7839 09-JUN-81
2450
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7566 JONES
MANAGER
7839 02-APR-81
2975
20
7654 MARTIN
30
SALESMAN
7698 28-SEP-81
1250
1400
7499 ALLEN
30
SALESMAN
7698 20-FEB-81
1600
300
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7844 TURNER
SALESMAN
7698 08-SEP-81
1500
0
30
7900 JAMES
30
CLERK
7698 03-DEC-81
950
7521 WARD
30
SALESMAN
7698 22-FEB-81
1250
500
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7902 FORD
ANALYST
7566 03-DEC-81
3000
20
7369 SMITH
20
CLERK
7902 17-DEC-80
800
7788 SCOTT
20
ANALYST
7566 09-DEC-82
3000
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7876 ADAMS
CLERK
7788 12-JAN-83
1100
20
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7934 MILLER
10
CLERK
7782 23-JAN-82
1300
14 rows selected.
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
SELECT
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> cl scr
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ------- --------- ----- --------- ----- ----- -----Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7788 SCOTT
7876 ADAMS
7934 MILLER
ANALYST
CLERK
CLERK
7566 09-DEC-82
7788 12-JAN-83
7782 23-JAN-82
3000
1100
1300
20
20
10
14 rows selected.
SQL> SELECT Deptno, Dname, Loc
2 FROM Dept;
DEPTNO
-----10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> ED
Wrote file afiedt.buf
1 SELECT Loc, Dname
2* FROM Dept
SQL> /
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
40 BOSTON
SQL> cl scr
SQL> SELECT Empno, Ename, Job
2 FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
EMPNO
----7788
7876
7934
ENAME
------SCOTT
ADAMS
MILLER
JOB
--------ANALYST
CLERK
CLERK
14 rows selected.
SQL> SELECT Ename, Sal, HireDate, Job
2 FROM Emp;
ENAME
SAL HIREDATE JOB
------- ----- --------- --------KING
5000 17-NOV-81 PRESIDENT
BLAKE
2850 01-MAY-81 MANAGER
CLARK
2450 09-JUN-81 MANAGER
JONES
2975 02-APR-81 MANAGER
MARTIN
1250 28-SEP-81 SALESMAN
ALLEN
1600 20-FEB-81 SALESMAN
TURNER
1500 08-SEP-81 SALESMAN
JAMES
950 03-DEC-81 CLERK
WARD
1250 22-FEB-81 SALESMAN
FORD
3000 03-DEC-81 ANALYST
SMITH
800 17-DEC-80 CLERK
ENAME
SAL HIREDATE JOB
------- ----- --------- --------SCOTT
3000 09-DEC-82 ANALYST
ADAMS
1100 12-JAN-83 CLERK
MILLER
1300 23-JAN-82 CLERK
14 rows selected.
SQL> SELECT Ename
2 FROm Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> SELECT Empno, Ename, MGR
2 FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
MGR
------- ----KING
BLAKE
7839
CLARK
7839
JONES
7839
MARTIN
7698
ALLEN
7698
TURNER
7698
JAMES
7698
WARD
7698
FORD
7566
SMITH
7902
EMPNO
----7788
7876
7934
ENAME
MGR
------- ----SCOTT
7566
ADAMS
7788
MILLER
7782
14 rows selected.
SQL> SELECT Empno, Ename, MGR, Job
2 FROM Emp;
EMPNO
----7839
7698
7782
ENAME
MGR JOB
------- ----- --------KING
PRESIDENT
BLAKE
7839 MANAGER
CLARK
7839 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7566
7654
7499
7844
7900
7521
7902
7369
EMPNO
----7788
7876
7934
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
7839
7698
7698
7698
7698
7698
7566
7902
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ENAME
MGR JOB
------- ----- --------SCOTT
7566 ANALYST
ADAMS
7788 CLERK
MILLER
7782 CLERK
14 rows selected.
SQL> cl scr
SQL> SELECT Empno, Ename, Sal, Comm
2 FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
SAL COMM
------- ----- ----KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250 1400
ALLEN
1600
300
TURNER
1500
0
JAMES
950
WARD
1250
500
FORD
3000
SMITH
800
EMPNO
----7788
7876
7934
ENAME
SAL COMM
------- ----- ----SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> SELECT Empno, Ename, Job, Sal, Comm
2 FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
ENAME
JOB
SAL COMM
------- --------- ----- ----KING
PRESIDENT 5000
BLAKE
MANAGER
2850
CLARK
MANAGER
2450
JONES
MANAGER
2975
MARTIN SALESMAN
1250 1400
ALLEN
SALESMAN
1600
300
TURNER SALESMAN
1500
0
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7900
7521
7902
7369
EMPNO
----7788
7876
7934
JAMES
WARD
FORD
SMITH
CLERK
SALESMAN
ANALYST
CLERK
950
1250
3000
800
ENAME
------SCOTT
ADAMS
MILLER
JOB
SAL COMM
--------- ----- ----ANALYST
3000
CLERK
1100
CLERK
1300
500
14 rows selected.
SQL> cl scr
SQL> SELECT
2
Empno,
3
Ename,
4
Sal,
5
HireDate,
6
Job
7 FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
SAL HIREDATE JOB
------- ----- --------- --------KING
5000 17-NOV-81 PRESIDENT
BLAKE
2850 01-MAY-81 MANAGER
CLARK
2450 09-JUN-81 MANAGER
JONES
2975 02-APR-81 MANAGER
MARTIN
1250 28-SEP-81 SALESMAN
ALLEN
1600 20-FEB-81 SALESMAN
TURNER
1500 08-SEP-81 SALESMAN
JAMES
950 03-DEC-81 CLERK
WARD
1250 22-FEB-81 SALESMAN
FORD
3000 03-DEC-81 ANALYST
SMITH
800 17-DEC-80 CLERK
EMPNO
----7788
7876
7934
ENAME
SAL HIREDATE JOB
------- ----- --------- --------SCOTT
3000 09-DEC-82 ANALYST
ADAMS
1100 12-JAN-83 CLERK
MILLER
1300 23-JAN-82 CLERK
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Sal * 12
2 FROM Emp
3
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal, Sal * 12
2 FROM Emp;
ENAME
DEPTNO
SAL
SAL*12
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
2975
1250
1600
1500
950
1250
3000
800
47700
27000
31200
30000
23400
27000
48000
21600
ENAME
SAL (SAL+1000)*12
------- ----- ------------SCOTT
3000
48000
ADAMS
1100
25200
MILLER
1300
27600
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, (Sal + 1000) * 12
2* FROM Emp
SQL> /
ENAME
(SAL+1000)*12
------- ------------KING
72000
BLAKE
46200
CLARK
41400
JONES
47700
MARTIN
27000
ALLEN
31200
TURNER
30000
JAMES
23400
WARD
27000
FORD
48000
SMITH
21600
ENAME
(SAL+1000)*12
------- ------------SCOTT
48000
ADAMS
25200
MILLER
27600
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SELECT
Ename,
Sal,
Sal * 12,
(Sal + 1000) * 12,
((Sal + 1000) * 12) - (Sal * 12)
FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
ENAME
SAL
SAL*12 (SAL+1000)*12 ((SAL+1000)*12)-(SAL*12)
------- ----- ---------- ------------- -----------------------KING
5000
60000
72000
12000
BLAKE
2850
34200
46200
12000
CLARK
2450
29400
41400
12000
JONES
2975
35700
47700
12000
MARTIN
1250
15000
27000
12000
ALLEN
1600
19200
31200
12000
TURNER
1500
18000
30000
12000
JAMES
950
11400
23400
12000
WARD
1250
15000
27000
12000
FORD
3000
36000
48000
12000
SMITH
800
9600
21600
12000
ENAME
SAL
SAL*12 (SAL+1000)*12 ((SAL+1000)*12)-(SAL*12)
------- ----- ---------- ------------- -----------------------SCOTT
3000
36000
48000
12000
ADAMS
1100
13200
25200
12000
MILLER
1300
15600
27600
12000
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Sal + 1000, Sal - 1000, Sal * 12, Sal * 6, Sal * 12 +
1000
2 FROM Emp;
ENAME
SAL
SAL+1000
SAL-1000
SAL*12
SAL*6 SAL*12+1000
------- ----- ---------- ---------- ---------- ---------- ----------KING
5000
6000
4000
60000
30000
61000
BLAKE
2850
3850
1850
34200
17100
35200
CLARK
2450
3450
1450
29400
14700
30400
JONES
2975
3975
1975
35700
17850
36700
MARTIN
1250
2250
250
15000
7500
16000
ALLEN
1600
2600
600
19200
9600
20200
TURNER
1500
2500
500
18000
9000
19000
JAMES
950
1950
-50
11400
5700
12400
WARD
1250
2250
250
15000
7500
16000
FORD
3000
4000
2000
36000
18000
37000
SMITH
800
1800
-200
9600
4800
10600
ENAME
SAL
SAL+1000
SAL-1000
SAL*12
SAL*6 SAL*12+1000
------- ----- ---------- ---------- ---------- ---------- ----------SCOTT
3000
4000
2000
36000
18000
37000
ADAMS
1100
2100
100
13200
6600
14200
MILLER
1300
2300
300
15600
7800
16600
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Comm
2 FROM Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL COMM
------- ----- ----KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250 1400
ALLEN
1600
300
TURNER
1500
0
JAMES
950
WARD
1250
500
FORD
3000
SMITH
800
ENAME
SAL COMM
------- ----- ----SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Comm, Sal + Comm
2* FROM Emp
SQL> /
ENAME
SAL COMM
SAL+COMM
------- ----- ----- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250 1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
WARD
1250
500
1750
FORD
3000
SMITH
800
ENAME
SAL COMM
SAL+COMM
------- ----- ----- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Comm, Sal + NVL(Comm, 0)
2 FROM Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL COMM SAL+NVL(COMM,0)
------- ----- ----- --------------KING
5000
5000
BLAKE
2850
2850
CLARK
2450
2450
JONES
2975
2975
MARTIN
1250 1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
950
WARD
1250
500
1750
FORD
3000
3000
SMITH
800
800
ENAME
SAL COMM SAL+NVL(COMM,0)
------- ----- ----- --------------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, NVL(Comm, 500), Sal + NVL(Comm, 500)
2* FROM Emp
SQL> /
ENAME
SAL NVL(COMM,500) SAL+NVL(COMM,500)
------- ----- ------------- ----------------KING
5000
500
5500
BLAKE
2850
500
3350
CLARK
2450
500
2950
JONES
2975
500
3475
MARTIN
1250
1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
500
1450
WARD
1250
500
1750
FORD
3000
500
3500
SMITH
800
500
1300
ENAME
SAL NVL(COMM,500) SAL+NVL(COMM,500)
------- ----- ------------- ----------------SCOTT
3000
500
3500
ADAMS
1100
500
1600
MILLER
1300
500
1800
14 rows selected.
SQL> cl scr
SQL> SELECT 125 + 25 * 35
2 FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
125+25*35
---------1000
SQL> SELECT 125, 25, 125 + 25
2 FROM DUAL;
125
25
125+25
---------- ---------- ---------125
25
150
SQL> DESC DUAL
Name
Null?
Type
----------------------------------------- -------- ---------------------------DUMMY
VARCHAR2(1)
SQL> cl scr
SQL> SELECT
2 ((&GVal1 +
3 FROM DUAL;
Enter value for
Enter value for
Enter value for
Enter value for
12
25
30
5
gval1:
gval2:
gval3:
gval4:
12
NULL
30
7
((12+25)*30)/5
-------------222
SQL> /
Enter value
Enter value
Enter value
Enter value
for
for
for
for
((12+NULL)*30)/7
----------------
SQL> cl scr
SQL>
2
3
4
5
SELECT
Ename Name,
Sal Salary,
Comm Commission
FROM Emp;
NAME
SALARY COMMISSION
---------- ---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
1400
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
1600
1500
950
1250
3000
800
300
0
500
NAME
SALARY COMMISSION
---------- ---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename Name,
Sal Salary,
Comm Commission,
Sal + NVL(Comm, 0)
FROM Emp
/
NAME
SALARY COMMISSION SAL+NVL(COMM,0)
---------- ---------- ---------- --------------KING
5000
5000
BLAKE
2850
2850
CLARK
2450
2450
JONES
2975
2975
MARTIN
1250
1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
950
WARD
1250
500
1750
FORD
3000
3000
SMITH
800
800
NAME
SALARY COMMISSION SAL+NVL(COMM,0)
---------- ---------- ---------- --------------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
SELECT
Ename Name,
Sal Salary,
Comm Commission,
Sal + NVL(Comm, 0) Gross
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
6* FROM Emp
SQL> /
NAME
SALARY COMMISSION
GROSS
---------- ---------- ---------- ---------KING
5000
5000
BLAKE
2850
2850
CLARK
2450
2450
JONES
2975
2975
MARTIN
1250
1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
950
WARD
1250
500
1750
FORD
3000
3000
SMITH
800
800
NAME
SALARY COMMISSION
GROSS
---------- ---------- ---------- ---------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Ename Name,
3 Sal Salary,
4 Comm Commission,
5 Sal + NVL(Comm, 0) Gross Salary
6* FROM Emp
SQL> /
Sal + NVL(Comm, 0) Gross Salary
*
ERROR at line 5:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename Name,
Sal Salary,
Comm Commission,
Sal + NVL(Comm, 0) "Gross Salary"
FROM Emp
/
NAME
SALARY COMMISSION Gross Salary
---------- ---------- ---------- -----------KING
5000
5000
BLAKE
2850
2850
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
2450
2975
1250
1600
1500
950
1250
3000
800
1400
300
0
500
2450
2975
2650
1900
1500
950
1750
3000
800
NAME
SALARY COMMISSION Gross Salary
---------- ---------- ---------- -----------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename AS Name,
Sal AS Salary,
Comm AS Commission,
Sal + NVL(Comm, 0) AS "Gross Salary"
FROM Emp
/
NAME
SALARY COMMISSION Gross Salary
---------- ---------- ---------- -----------KING
5000
5000
BLAKE
2850
2850
CLARK
2450
2450
JONES
2975
2975
MARTIN
1250
1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
950
WARD
1250
500
1750
FORD
3000
3000
SMITH
800
800
NAME
SALARY COMMISSION Gross Salary
---------- ---------- ---------- -----------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
Empno Number,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3 Ename Name,
4 Sal Salary,
5 Comm Commission,
6 Sal + NVL(Comm, 0) "Gross Salary"
7* FROM Emp
SQL> /
Empno Number,
*
ERROR at line 2:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Empno "Number",
Ename Name,
Sal Salary,
Comm Commission,
Sal + NVL(Comm, 0) "Gross Salary"
FROM Emp
/
Number
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
NAME
SALARY COMMISSION Gross Salary
---------- ---------- ---------- -----------KING
5000
5000
BLAKE
2850
2850
CLARK
2450
2450
JONES
2975
2975
MARTIN
1250
1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
950
WARD
1250
500
1750
FORD
3000
3000
SMITH
800
800
Number
---------7788
7876
7934
NAME
SALARY COMMISSION Gross Salary
---------- ---------- ---------- -----------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> cl scr
SQL> SELECT Ename Name, Sal Salary, Comm Job, HireDate JoinDate
2 FROM Emp;
NAME
SALARY
JOB JOINDATE
---------- ---------- ---------- --------KING
5000
17-NOV-81
BLAKE
2850
01-MAY-81
CLARK
2450
09-JUN-81
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
2975
1250
1600
1500
950
1250
3000
800
02-APR-81
1400 28-SEP-81
300 20-FEB-81
0 08-SEP-81
03-DEC-81
500 22-FEB-81
03-DEC-81
17-DEC-80
NAME
SALARY
JOB JOINDATE
---------- ---------- ---------- --------SCOTT
3000
09-DEC-82
ADAMS
1100
12-JAN-83
MILLER
1300
23-JAN-82
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename Name, Sal Salary, Comm Job HireDate
2* FROM Emp
SQL> /
SELECT Ename Name, Sal Salary, Comm Job HireDate
*
ERROR at line 1:
ORA-00923: FROM keyword not found where expected
SQL> cl scr
SQL> SELECT Ename, Sal Salary, Comm, Salary + NVL(Comm, 0) TotSal
2 FROM Emp;
SELECT Ename, Sal Salary, Comm, Salary + NVL(Comm, 0) TotSal
*
ERROR at line 1:
ORA-00904: "SALARY": invalid identifier
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal Salary, Comm, Sal + NVL(Comm, 0) TotSal
2* FROM Emp
SQL> /
ENAME
SALARY COMM
TOTSAL
------- ---------- ----- ---------KING
5000
5000
BLAKE
2850
2850
CLARK
2450
2450
JONES
2975
2975
MARTIN
1250 1400
2650
ALLEN
1600
300
1900
TURNER
1500
0
1500
JAMES
950
950
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
WARD
FORD
SMITH
1250
3000
800
500
1750
3000
800
ENAME
SALARY COMM
TOTSAL
------- ---------- ----- ---------SCOTT
3000
3000
ADAMS
1100
1100
MILLER
1300
1300
14 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT
2 Ename, ' You Are Working For Department ', Deptno
3 FROM Emp;
ENAME
'YOUAREWORKINGFORDEPARTMENT'
DEPTNO
---------- -------------------------------- ---------KING
You Are Working For Department
10
BLAKE
You Are Working For Department
30
CLARK
You Are Working For Department
10
JONES
You Are Working For Department
20
MARTIN
You Are Working For Department
30
ALLEN
You Are Working For Department
30
TURNER
You Are Working For Department
30
JAMES
You Are Working For Department
30
WARD
You Are Working For Department
30
FORD
You Are Working For Department
20
SMITH
You Are Working For Department
20
ENAME
'YOUAREWORKINGFORDEPARTMENT'
DEPTNO
---------- -------------------------------- ---------SCOTT
You Are Working For Department
20
ADAMS
You Are Working For Department
20
MILLER
You Are Working For Department
10
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=28
0)
1
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3*
SQL>
SELECT
Ename, '''s Designation is ', Job, ' With Salary of ', Sal
FROM Emp
/
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
'''SDESIGNATIONIS'
-----------------'s Designation is
's Designation is
's Designation is
's Designation is
's Designation is
's Designation is
's Designation is
's Designation is
's Designation is
's Designation is
's Designation is
JOB
'WITHSALARYOF'
SAL
--------- ---------------- ---------PRESIDENT With Salary of
5000
MANAGER
With Salary of
2850
MANAGER
With Salary of
2450
MANAGER
With Salary of
2975
SALESMAN
With Salary of
1250
SALESMAN
With Salary of
1600
SALESMAN
With Salary of
1500
CLERK
With Salary of
950
SALESMAN
With Salary of
1250
ANALYST
With Salary of
3000
CLERK
With Salary of
800
ENAME
---------SCOTT
ADAMS
MILLER
'''SDESIGNATIONIS'
-----------------'s Designation is
's Designation is
's Designation is
JOB
'WITHSALARYOF'
SAL
--------- ---------------- ---------ANALYST
With Salary of
3000
CLERK
With Salary of
1100
CLERK
With Salary of
1300
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
SQL> cl scr
SQL> SET AUTOTRACE OFF EXPLAIN
SQL> cl scr
SQL> SELECT Empno||Ename||Job||Sal||Comm||MGR||HireDate||Deptno Employee
2 FROM Emp;
EMPLOYEE
-------------------------------------------------------------------------------7839KINGPRESIDENT500017-NOV-8110
7698BLAKEMANAGER2850783901-MAY-8130
7782CLARKMANAGER2450783909-JUN-8110
7566JONESMANAGER2975783902-APR-8120
7654MARTINSALESMAN12501400769828-SEP-8130
7499ALLENSALESMAN1600300769820-FEB-8130
7844TURNERSALESMAN15000769808-SEP-8130
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7900JAMESCLERK950769803-DEC-8130
7521WARDSALESMAN1250500769822-FEB-8130
7902FORDANALYST3000756603-DEC-8120
7369SMITHCLERK800790217-DEC-8020
EMPLOYEE
-------------------------------------------------------------------------------7788SCOTTANALYST3000756609-DEC-8220
7876ADAMSCLERK1100778812-JAN-8320
7934MILLERCLERK1300778223-JAN-8210
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Empno||' is '||Ename||' With Designation of '||Job||' Earning A Salary of
'||Sal||' With Commission of '||NVL(Comm, 0)||' Joined on '||HireDate||' in the
Department '||Deptno Employee
3* FROM Emp
SQL> cl scr
SQL> /
EMPLOYEE
-------------------------------------------------------------------------------7839 is KING With Designation of PRESIDENT Earning A Salary of 5000 With Commiss
ion of 0 Joined on 17-NOV-81 in the Department 10
7698 is BLAKE With Designation of MANAGER Earning A Salary of 2850 With Commissi
on of 0 Joined on 01-MAY-81 in the Department 30
7782 is CLARK With Designation of MANAGER Earning A Salary of 2450 With Commissi
on of 0 Joined on 09-JUN-81 in the Department 10
7566 is JONES With Designation of MANAGER Earning A Salary of 2975 With Commissi
on of 0 Joined on 02-APR-81 in the Department 20
EMPLOYEE
-------------------------------------------------------------------------------7654 is MARTIN With Designation of SALESMAN Earning A Salary of 1250 With Commis
sion of 1400 Joined on 28-SEP-81 in the Department 30
7499 is ALLEN With Designation of SALESMAN Earning A Salary of 1600 With Commiss
ion of 300 Joined on 20-FEB-81 in the Department 30
7844 is TURNER With Designation of SALESMAN Earning A Salary of 1500 With Commis
sion of 0 Joined on 08-SEP-81 in the Department 30
7900 is JAMES With Designation of CLERK Earning A Salary of 950 With Commission
EMPLOYEE
-------------------------------------------------------------------------------of 0 Joined on 03-DEC-81 in the Department 30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7521 is WARD With Designation of SALESMAN Earning A Salary of 1250 With Commissi
on of 500 Joined on 22-FEB-81 in the Department 30
7902 is FORD With Designation of ANALYST Earning A Salary of 3000 With Commissio
n of 0 Joined on 03-DEC-81 in the Department 20
7369 is SMITH With Designation of CLERK Earning A Salary of 800 With Commission
of 0 Joined on 17-DEC-80 in the Department 20
EMPLOYEE
-------------------------------------------------------------------------------7788 is SCOTT With Designation of ANALYST Earning A Salary of 3000 With Commissi
on of 0 Joined on 09-DEC-82 in the Department 20
7876 is ADAMS With Designation of CLERK Earning A Salary of 1100 With Commission
of 0 Joined on 12-JAN-83 in the Department 20
7934 is MILLER With Designation of CLERK Earning A Salary of 1300 With Commissio
n of 0 Joined on 23-JAN-82 in the Department 10
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
* 12
3*
SQL>
SELECT
Ename||'''s Salary is Fixed As '||Sal||' Monthly Costing Annually At '||Sal
"Employees And Salaries"
FROM Emp
/
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Sum of '||&GNum1||' And '||&GNum2||' is '||&GNum1 + &GNum2 Result
3* FROM DUAL
SQL> /
Enter value for gnum1: 25
Enter value for gnum2: 45
Enter value for gnum1:
Enter value for gnum2:
'The Sum of '||25||' And '||45||' is '|| + Result
*
ERROR at line 2:
ORA-00904: "RESULT": invalid identifier
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Sum of '||&GNum1||' And '||&GNum2||' is '||&GNum3 + &GNum4 Result
3* FROM DUAL
SQL> /
Enter value for gnum1: 25
Enter value for gnum2: 45
Enter value for gnum3: 25
Enter value for gnum4: 45
'The Sum of '||25||' And '||45||' is '||25 + 45 Result
*
ERROR at line 2:
ORA-01722: invalid number
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Sum of '||&GNum1||' And '||&GNum2||' is '||(&GNum3 + &GNum4) Result
3* FROM DUAL
SQL> /
Enter value for gnum1: 25
Enter value for gnum2: 45
Enter value for gnum3: 25
Enter value for gnum4: 45
RESULT
-------------------------The Sum of 25 And 45 is 70
SQL> cl scr
SQL> SELECT Ename FROM Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> SELECT Deptno FROM Emp;
DEPTNO
---------10
30
10
20
30
30
30
30
30
20
20
DEPTNO
---------20
20
10
14 rows selected.
SQL> SELECT Ename, Deptno FROM Emp;
ENAME
DEPTNO
---------- ---------KING
10
BLAKE
30
CLARK
10
JONES
20
MARTIN
30
ALLEN
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TURNER
JAMES
WARD
FORD
SMITH
30
30
30
20
20
ENAME
DEPTNO
---------- ---------SCOTT
20
ADAMS
20
MILLER
10
14 rows selected.
SQL> SELECT Job FROM Emp;
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
JOB
--------ANALYST
CLERK
CLERK
14 rows selected.
SQL> SELECT Ename, Job FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ENAME
JOB
---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
ADAMS
MILLER
ANALYST
CLERK
CLERK
14 rows selected.
SQL> cl scr
SQL> SELECT DISTINCT Deptno FROM Emp;
DEPTNO
---------10
20
30
SQL> SELECT DISTINCT Job FROM Emp;
JOB
--------ANALYST
CLERK
MANAGER
PRESIDENT
SALESMAN
SQL> SELECT MGR FROM Emp;
MGR
---------7839
7839
7839
7698
7698
7698
7698
7698
7566
7902
MGR
---------7566
7788
7782
14 rows selected.
SQL> SELECT DISTINCT MGR FROM Emp;
MGR
---------7566
7698
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7782
7788
7839
7902
7 rows selected.
SQL> SELECT Comm FROM Emp;
COMM
----------
1400
300
0
500
COMM
----------
14 rows selected.
SQL> SELECT DITINCT Comm FROM Emp;
SELECT DITINCT Comm FROM Emp
*
ERROR at line 1:
ORA-00904: "DITINCT": invalid identifier
SQL> cl scr
SQL> SELECT Empno FROM Emp;
EMPNO
---------7369
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7499
7521
7566
7654
7698
7782
7788
7839
7844
7876
EMPNO
---------7900
7902
7934
14 rows selected.
SQL> SELECT DISTINCT Empno FROM Emp;
EMPNO
---------7369
7499
7521
7566
7654
7698
7782
7788
7839
7844
7876
EMPNO
---------7900
7902
7934
14 rows selected.
SQL> cl scr
SQL> SELECT Deptno, Job FROM Emp;
DEPTNO
---------10
30
10
20
30
30
30
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
30
30
20
20
DEPTNO
---------20
20
10
CLERK
SALESMAN
ANALYST
CLERK
JOB
--------ANALYST
CLERK
CLERK
14 rows selected.
SQL> SELECT DISTINCT Deptno, Job FROM Emp;
DEPTNO
---------10
10
10
20
20
20
30
30
30
JOB
--------CLERK
MANAGER
PRESIDENT
ANALYST
CLERK
MANAGER
CLERK
MANAGER
SALESMAN
9 rows selected.
SQL> SELECT DISTINCT Deptno, DISTINCT Job FROM Emp;
SELECT DISTINCT Deptno, DISTINCT Job FROM Emp
*
ERROR at line 1:
ORA-00936: missing expression
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TURNER
JAMES
WARD
FORD
SMITH
1500
950
1250
3000
800
30
30
30
20
20
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT Ename, Sal
2 FROM Emp;
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
---------- ---------KING
5000
FORD
3000
SCOTT
3000
SQL> SELECT Ename, Deptno, Job, HireDate
2 FROM Emp
3 WHERE HireDate = '03-DEC-81';
ENAME
DEPTNO JOB
---------- ---------- --------JAMES
30 CLERK
FORD
20 ANALYST
HIREDATE
--------03-DEC-81
03-DEC-81
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
---------- ---------- --------JAMES
30 CLERK
FORD
20 ANALYST
HIREDATE
--------03-DEC-81
03-DEC-81
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
---------- ---------- --------JAMES
30 CLERK
FORD
20 ANALYST
HIREDATE
--------03-DEC-81
03-DEC-81
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename||' is Working in Department '||Deptno||' Joined On '||HireDate
Employee
2 FROM Emp
3* WHERE HireDate = '03-DECEMBER-1981'
SQL> /
EMPLOYEE
-------------------------------------------------------------------------------JAMES is Working in Department 30 Joined On 03-DEC-81
FORD is Working in Department 20 Joined On 03-DEC-81
SQL> cl scr
SQL> SELECT DISTINCT Job
2 FROM Emp;
JOB
--------ANALYST
CLERK
MANAGER
PRESIDENT
SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
JOB
--------ANALYST
MANAGER
PRESIDENT
SALESMAN
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 /
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
2975
1250
1600
1500
950
1250
3000
800
20
30
30
30
30
30
20
20
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------JAMES
950
30 CLERK
SMITH
800
20 CLERK
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
MILLER
1300
10 CLERK
9 rows selected.
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal, Sal * 12 AnnSal
2 FROM Emp
3 WHERE Sal * 12 > 35000;
ENAME
DEPTNO
SAL
ANNSAL
---------- ---------- ---------- ---------KING
10
5000
60000
JONES
20
2975
35700
FORD
20
3000
36000
SCOTT
20
3000
36000
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
JONES
20
2975
FORD
20
3000
SCOTT
20
3000
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------- ---------KING
10
5000
5000
BLAKE
30
2850
2850
JONES
20
2975
2975
FORD
20
3000
3000
SCOTT
20
3000
3000
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Deptno, Sal, Comm, Sal + NVL(Comm, 0) TotSal
2 FROM Emp
3* WHERE TotSal > 2800
SQL> /
WHERE TotSal > 2800
*
ERROR at line 3:
ORA-00904: "TOTSAL": invalid identifier
SQL> cl scr
SQL> SELECT 'Apple is Fruit' Fruit
2 FROM Emp
3 WHERE Empno = 7566;
FRUIT
-------------Apple is Fruit
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> cl scr
SQL> SELECT 125 Value1, 25 Value2, 125 + 25 Result
2 FROM DUAL
3 WHERE 'APPLE' = 'APPLE';
VALUE1
VALUE2
RESULT
---------- ---------- ---------125
25
150
SQL> ED
Wrote file afiedt.buf
1
2 FROM DUAL
3* WHERE 'APPLE' = 'APPLe'
SQL> /
no rows selected
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT
Ename,
Sal,
Deptno,
Job
FROM Emp
WHERE
Deptno = 20 AND Job = 'MANAGER';
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------JONES
2975
20 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
Ename,
Sal,
Deptno,
Job
FROM Emp
WHERE
Deptno = 20
/
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------JONES
2975
20 MANAGER
FORD
3000
20 ANALYST
SMITH
800
20 CLERK
SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
ENAME
SELECT
Ename,
Sal,
Deptno,
Job
FROM Emp
WHERE
Job = 'MANAGER'
/
SAL
DEPTNO JOB
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
Ename,
Sal,
Deptno,
Job
FROM Emp
WHERE
Deptno = 20 AND Job = 'MANAGER'
/
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------JONES
2975
20 MANAGER
SQL> cl scr
SQL> SELECT
2
Empno,
3
Ename,
4
Job,
5
Sal
6 FROM Emp
7 WHERE Sal >= 1100;
EMPNO
---------7839
7698
7782
7566
7654
7499
7844
7521
7902
7788
7876
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
WARD
FORD
SCOTT
ADAMS
JOB
SAL
--------- ---------PRESIDENT
5000
MANAGER
2850
MANAGER
2450
MANAGER
2975
SALESMAN
1250
SALESMAN
1600
SALESMAN
1500
SALESMAN
1250
ANALYST
3000
ANALYST
3000
CLERK
1100
EMPNO ENAME
JOB
SAL
---------- ---------- --------- ---------7934 MILLER
CLERK
1300
12 rows selected.
SQL> SELECT
2
Empno,
3
Ename,
4
Job,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5
6
7
Sal
FROM Emp
WHERE Job = 'CLERK';
EMPNO
---------7900
7369
7876
7934
ENAME
---------JAMES
SMITH
ADAMS
MILLER
JOB
SAL
--------- ---------CLERK
950
CLERK
800
CLERK
1100
CLERK
1300
SQL> SELECT
2
Empno,
3
Ename,
4
Job,
5
Sal
6 FROM Emp
7 WHERE Sal >= 1100 AND Job = 'CLERK';
EMPNO
---------7876
7934
ENAME
---------ADAMS
MILLER
JOB
SAL
--------- ---------CLERK
1100
CLERK
1300
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
Ename,
Sal ,
Job
FROM Emp
WHERE
Sal >= 1500 AND Sal >= 2850;
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
JONES
2975 MANAGER
FORD
3000 ANALYST
SCOTT
3000 ANALYST
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal ,
Job
FROM Emp
WHERE
Sal >= 2850
/
ENAME
SAL JOB
---------- ---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
JONES
FORD
SCOTT
5000
2850
2975
3000
3000
PRESIDENT
MANAGER
MANAGER
ANALYST
ANALYST
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal ,
Job
FROM Emp
WHERE
Sal = 1250 AND Sal = 3000
/
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal ,
Job
FROM Emp
WHERE
Sal = 1250 AND Sal <> 3000
/
ENAME
SAL JOB
---------- ---------- --------MARTIN
1250 SALESMAN
WARD
1250 SALESMAN
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal ,
Job
FROM Emp
WHERE
Job = 'MANAGER' AND Job = 'ANALYST'
/
no rows selected
SQL> SELECT
2
Ename,
3
Sal,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
6
7
8
Job
FROM Emp
WHERE
(Sal >= 1500 AND Sal <= 2850) AND
Job = 'MANAGER';
ENAME
SAL JOB
---------- ---------- --------BLAKE
2850 MANAGER
CLARK
2450 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
Ename,
Sal,
Job
FROM Emp
WHERE
Sal >= 1500 AND Sal <= 2850 AND
Job = 'MANAGER'
/
ENAME
SAL JOB
---------- ---------- --------BLAKE
2850 MANAGER
CLARK
2450 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal,
Job
FROM Emp
WHERE
Sal >= 1500 AND (Sal <= 2850 AND Job = 'MANAGER')
/
ENAME
SAL JOB
---------- ---------- --------BLAKE
2850 MANAGER
CLARK
2450 MANAGER
SQL> cl scr
SQL> SELECT Ename, Deptno, Job
2 FROM Emp
3 WHERE Deptno = 20 OR Job = 'MANAGER';
ENAME
DEPTNO JOB
---------- ---------- --------BLAKE
30 MANAGER
CLARK
10 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
FORD
SMITH
SCOTT
ADAMS
20
20
20
20
20
MANAGER
ANALYST
CLERK
ANALYST
CLERK
7 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 WHERE Deptno = 10 OR Deptno = 30;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
MILLER
1300
10 CLERK
9 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------MARTIN
1250
30 SALESMAN
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------BLAKE
2850
30 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CLARK
JONES
MARTIN
ALLEN
TURNER
WARD
FORD
SCOTT
MILLER
2450
2975
1250
1600
1500
1250
3000
3000
1300
10
20
30
30
30
30
20
20
10
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
SALESMAN
ANALYST
ANALYST
CLERK
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
MARTIN
1250
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SMITH
800
20 CLERK
SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
8 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Ename,
Sal,
Job
FROM Emp
WHERE Sal >= 1500 OR Sal >= 2850;
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
JONES
2975 MANAGER
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
FORD
3000 ANALYST
SCOTT
3000 ANALYST
8 rows selected.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
Ename,
Sal,
Job
FROM Emp
WHERE Sal >= 1500
/
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
JONES
2975 MANAGER
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
FORD
3000 ANALYST
SCOTT
3000 ANALYST
8 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 WHERE Job <> 'MANAGER';
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SMITH
800
20 CLERK
SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
11 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
1250
1600
1500
950
1250
3000
800
3000
1100
1300
30
30
30
30
30
20
20
20
20
10
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ANALYST
CLERK
CLERK
11 rows selected.
SQL> cl scr
SQL> SELECT Ename, Deptno, Job
2 FROM Emp
3 WHERE Job = 'SALESMAN';
ENAME
DEPTNO JOB
---------- ---------- --------MARTIN
30 SALESMAN
ALLEN
30 SALESMAN
TURNER
30 SALESMAN
WARD
30 SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
---------- ---------- --------BLAKE
30 MANAGER
MARTIN
30 SALESMAN
ALLEN
30 SALESMAN
TURNER
30 SALESMAN
JAMES
30 CLERK
WARD
30 SALESMAN
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
---------- ---------- --------BLAKE
30 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JAMES
30 CLERK
ENAME
DEPTNO JOB
---------- ---------- --------BLAKE
30 MANAGER
MARTIN
30 SALESMAN
ALLEN
30 SALESMAN
TURNER
30 SALESMAN
JAMES
30 CLERK
WARD
30 SALESMAN
6 rows selected.
SQL> SELECT Ename, Deptno, Job
2 FROM Emp
3 WHERE NOT Job = 'SALESMAN' AND Deptno = 30;
ENAME
DEPTNO JOB
---------- ---------- --------BLAKE
30 MANAGER
JAMES
30 CLERK
SQL> ED
Wrote file afiedt.buf
1
2 FROM Emp
3* WHERE Job = 'SALESMAN' AND NOT Deptno = 30
SQL> /
ENAME
DEPTNO JOB
---------- ---------- --------SAMPLE01
20 SALESMAN
SAMPLE02
10 SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
---------- ---------- --------KING
10 PRESIDENT
CLARK
10 MANAGER
JONES
20 MANAGER
FORD
20 ANALYST
SMITH
20 CLERK
SCOTT
20 ANALYST
ADAMS
20 CLERK
MILLER
10 CLERK
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
---------- ---------- --------KING
10 PRESIDENT
CLARK
10 MANAGER
JONES
20 MANAGER
FORD
20 ANALYST
SMITH
20 CLERK
SCOTT
20 ANALYST
ADAMS
20 CLERK
MILLER
10 CLERK
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
ENAME
DEPTNO JOB
---------- ---------- --------KING
10 PRESIDENT
BLAKE
30 MANAGER
CLARK
10 MANAGER
JONES
20 MANAGER
JAMES
30 CLERK
FORD
20 ANALYST
SMITH
20 CLERK
SCOTT
20 ANALYST
ADAMS
20 CLERK
MILLER
10 CLERK
SAMPLE01
20 SALESMAN
ENAME
DEPTNO JOB
---------- ---------- --------SAMPLE02
10 SALESMAN
12 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 WHERE Sal = 3000;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
WARD
1250
30 SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------JAMES
950
30 CLERK
FORD
3000
20 ANALYST
SMITH
800
20 CLERK
SCOTT
3000
20 ANALYST
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
MILLER
1100
1300
20 CLERK
10 CLERK
6 rows selected.
SQL> cl scr
SQL>
2
3
4
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------JAMES
950
30 03-DEC-81
FORD
3000
20 03-DEC-81
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------SCOTT
3000
20 09-DEC-82
ADAMS
1100
20 12-JAN-83
MILLER
1300
10 23-JAN-82
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------KING
5000
10 17-NOV-81
BLAKE
2850
30 01-MAY-81
CLARK
2450
10 09-JUN-81
JONES
2975
20 02-APR-81
MARTIN
1250
30 28-SEP-81
ALLEN
1600
30 20-FEB-81
TURNER
1500
30 08-SEP-81
WARD
1250
30 22-FEB-81
SMITH
800
20 17-DEC-80
9 rows selected.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3*
SQL>
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------KING
5000
10 17-NOV-81
BLAKE
2850
30 01-MAY-81
CLARK
2450
10 09-JUN-81
JONES
2975
20 02-APR-81
MARTIN
1250
30 28-SEP-81
ALLEN
1600
30 20-FEB-81
TURNER
1500
30 08-SEP-81
WARD
1250
30 22-FEB-81
SMITH
800
20 17-DEC-80
SCOTT
3000
20 09-DEC-82
ADAMS
1100
20 12-JAN-83
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------MILLER
1300
10 23-JAN-82
12 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Comm
2 FROM Emp;
ENAME
SAL
COMM
---------- ---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
1400
ALLEN
1600
300
TURNER
1500
0
JAMES
950
WARD
1250
500
FORD
3000
SMITH
800
ENAME
SAL
COMM
---------- ---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2 FROM Emp
3* WHERE Comm = NULL
SQL> /
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> cl scr
SQL> SELECT Ename, Sal, Job, Deptno
2 FROM Emp
3 WHERE Deptno = 10;
ENAME
SAL JOB
DEPTNO
---------- ---------- --------- ---------KING
5000 PRESIDENT
10
CLARK
2450 MANAGER
10
MILLER
1300 CLERK
10
SQL> SELECT Ename, Sal, Job, Deptno
2 FROM Emp
3 WHERE 10 = Deptno;
ENAME
SAL JOB
DEPTNO
---------- ---------- --------- ---------KING
5000 PRESIDENT
10
CLARK
2450 MANAGER
10
MILLER
1300 CLERK
10
SQL> SELECT Ename, Sal, Job, Deptno
2 FROM Emp
3 WHERE Job = 'MANAGER';
ENAME
SAL JOB
DEPTNO
---------- ---------- --------- ---------BLAKE
2850 MANAGER
30
CLARK
2450 MANAGER
10
JONES
2975 MANAGER
20
SQL> SELECT Ename, Sal, Job, Deptno
2 FROM Emp
3 WHERE 'MANAGER' = Job;
ENAME
SAL JOB
DEPTNO
---------- ---------- --------- ---------BLAKE
2850 MANAGER
30
CLARK
2450 MANAGER
10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
2975 MANAGER
20
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
EMPNO
---------7788
7876
7934
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> SELECT Ename Name, Sal Salary FROM Emp;
NAME
SALARY
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
NAME
SALARY
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> cl scr
SQL> SELECTEname, Sal, Deptno, job
SP2-0734: unknown command beginning "SELECTEnam..." - rest of line ignored.
SQL> SELECT Ename, Sal, Deptno, job
2 FROM Emp
3 WHERE
4 Job = 'PRESIDENT' OR
5 Job = 'MANAGER' OR
6 Job = 'ANALYST' OR
7 Job = 'SALESMAN';
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
10 rows selected.
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
Department_ID, Job_ID, SUM(Salary), AVG(Salary)
FROM Employees
WHERE
(
(DEPARTMENT_ID = 20 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 30 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 40 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 50 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
JOB_ID
JOB_ID
JOB_ID
JOB_ID
) AND
(
SALARY
)
=
=
=
=
'HR_REP' OR
'SH_CLERK' OR
'IT_PROG' OR
'SA_REP'
) OR
(DEPARTMENT_ID = 60 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 80 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 20 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 20 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
109
110
111
112
113
114
115
116
117
118
119
JOB_ID
JOB_ID
JOB_ID
JOB_ID
) AND
(
SALARY
)
=
=
=
=
'HR_REP' OR
'SH_CLERK' OR
'IT_PROG' OR
'SA_REP'
)
)
GROUP BY Department_ID, Job_ID;
DEPARTMENT_ID
------------20
20
30
40
60
80
JOB_ID
SUM(SALARY) AVG(SALARY)
---------- ----------- ----------MK_MAN
13000
13000
MK_REP
6000
6000
PU_MAN
11000
11000
HR_REP
6500
6500
IT_PROG
15000
7500
SA_REP
243500 8396.55172
6 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
SELECT
Department_ID, Job_ID, SUM(Salary), AVG(Salary)
FROm Employees
WHERE
(
(DEPARTMENT_ID = 20 OR
DEPARTMENT_ID = 30 OR
DEPARTMENT_ID = 40 OR
DEPARTMENT_ID = 50 OR
DEPARTMENT_ID = 60 OR
DEPARTMENT_ID = 80
) AND
(JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
)
GROUP BY Department_ID, Job_ID;
DEPARTMENT_ID JOB_ID
SUM(SALARY) AVG(SALARY)
------------- ---------- ----------- ----------20 MK_MAN
13000
13000
20 MK_REP
6000
6000
30 PU_MAN
11000
11000
40 HR_REP
6500
6500
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
60 IT_PROG
80 SA_REP
15000
243500
7500
8396.55172
6 rows selected.
SQL> SET AUTOTRACE ON EXPLAIn
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
SELECT
Department_ID, Job_ID, SUM(Salary), AVG(Salary)
FROm Employees
WHERE
(
(DEPARTMENT_ID = 20 OR
DEPARTMENT_ID = 30 OR
DEPARTMENT_ID = 40 OR
DEPARTMENT_ID = 50 OR
DEPARTMENT_ID = 60 OR
DEPARTMENT_ID = 80
) AND
(JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
)
GROUP BY Department_ID, Job_ID;
DEPARTMENT_ID
------------20
20
30
40
60
80
JOB_ID
SUM(SALARY) AVG(SALARY)
---------- ----------- ----------MK_MAN
13000
13000
MK_REP
6000
6000
PU_MAN
11000
11000
HR_REP
6500
6500
IT_PROG
15000
7500
SA_REP
243500 8396.55172
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=34 Bytes=54
4)
1
2
0
1
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
SELECT
Department_ID, Job_ID, SUM(Salary), AVG(Salary)
FROM Employees
WHERE
(
(DEPARTMENT_ID = 20 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 30 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 40 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 50 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
JOB_ID
JOB_ID
JOB_ID
) AND
(
SALARY
)
= 'SH_CLERK' OR
= 'IT_PROG' OR
= 'SA_REP'
) OR
(DEPARTMENT_ID = 60 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 80 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 20 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
JOB_ID = 'SH_CLERK' OR
JOB_ID = 'IT_PROG' OR
JOB_ID = 'SA_REP'
) AND
(
SALARY >= 5000 AND SALARY <= 30000
)
) OR
(DEPARTMENT_ID = 20 AND (
JOB_ID = 'MK_MAN' OR
JOB_ID = 'MK_REP' OR
JOB_ID = 'PU_MAN' OR
JOB_ID = 'PU_CLERK' OR
JOB_ID = 'HR_REP' OR
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
110
111
112
113
114
115
116
117
118
119
JOB_ID
JOB_ID
JOB_ID
) AND
(
SALARY
)
= 'SH_CLERK' OR
= 'IT_PROG' OR
= 'SA_REP'
)
)
GROUP BY Department_ID, Job_ID;
DEPARTMENT_ID
------------20
20
30
40
60
80
JOB_ID
SUM(SALARY) AVG(SALARY)
---------- ----------- ----------MK_MAN
13000
13000
MK_REP
6000
6000
PU_MAN
11000
11000
HR_REP
6500
6500
IT_PROG
15000
7500
SA_REP
243500 8396.55172
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=6 Bytes=96)
1
0
SORT (GROUP BY) (Cost=4 Card=6 Bytes=96)
2
1
TABLE ACCESS (FULL) OF 'EMPLOYEES' (TABLE) (Cost=3 Card=
36 Bytes=576)
SQL> cl scr
SQL> SET AUTOTRACE OFF EXPLAIN
SQL> CONN SCOTT/TIGER
Connected.
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp;
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
BLAKE
30
2850
CLARK
10
2450
JONES
20
2975
MARTIN
30
1250
ALLEN
30
1600
TURNER
30
1500
JAMES
30
950
WARD
30
1250
FORD
20
3000
SMITH
20
800
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
DEPTNO
SAL
---------- ---------- ---------SCOTT
20
3000
ADAMS
20
1100
MILLER
10
1300
14 rows selected.
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp
3 WHERE Sal BETWEEN 1250 AND 2975;
ENAME
DEPTNO
SAL
---------- ---------- ---------BLAKE
30
2850
CLARK
10
2450
JONES
20
2975
MARTIN
30
1250
ALLEN
30
1600
TURNER
30
1500
WARD
30
1250
MILLER
10
1300
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
JAMES
30
950
FORD
20
3000
SMITH
20
800
SCOTT
20
3000
ADAMS
20
1100
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO
SAL JOB
---------- ---------- ---------- --------KING
10
5000 PRESIDENT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
BLAKE
CLARK
JONES
30
10
20
2850 MANAGER
2450 MANAGER
2975 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO
SAL JOB
---------- ---------- ---------- --------MARTIN
30
1250 SALESMAN
ALLEN
30
1600 SALESMAN
TURNER
30
1500 SALESMAN
JAMES
30
950 CLERK
WARD
30
1250 SALESMAN
FORD
20
3000 ANALYST
SMITH
20
800 CLERK
SCOTT
20
3000 ANALYST
ADAMS
20
1100 CLERK
MILLER
10
1300 CLERK
10 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 WHERE Deptno = 10 OR Deptno = 20 OR Deptno = 30;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SMITH
800
20 CLERK
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
14 rows selected.
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
5
6
7
SELECT
Ename,
Sal,
Job
FROM Emp
WHERE
Ename IN('FORD', 'ALLEN');
ENAME
SAL JOB
---------- ---------- --------ALLEN
1600 SALESMAN
FORD
3000 ANALYST
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal,
Job
FROM Emp
WHERE
Ename NOT IN('FORD', 'ALLEN')
/
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
JONES
2975 MANAGER
MARTIN
1250 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
WARD
1250 SALESMAN
SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
ENAME
SAL JOB
---------- ---------- --------MILLER
1300 CLERK
12 rows selected.
SQL>
2
3
4
5
6
7
SELECT
Ename,
Sal,
Deptno
FROM Emp
WHERE
Deptno IN(10, 30);
ENAME
SAL
DEPTNO
---------- ---------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
CLARK
MARTIN
ALLEN
TURNER
JAMES
WARD
MILLER
5000
2850
2450
1250
1600
1500
950
1250
1300
10
30
10
30
30
30
30
30
10
9 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal,
Deptno
FROM Emp
WHERE
Deptno NOT IN(10, 30)
/
ENAME
SAL
DEPTNO
---------- ---------- ---------JONES
2975
20
FORD
3000
20
SMITH
800
20
SCOTT
3000
20
ADAMS
1100
20
SQL>
2
3
4
5
6
7
SELECT
Ename,
Sal,
Hiredate
FROM Emp
WHERE
Hiredate IN('20-FEB-1981', '09-JUN-1981');
ENAME
SAL HIREDATE
---------- ---------- --------CLARK
2450 09-JUN-81
ALLEN
1600 20-FEB-81
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename,
Sal,
Hiredate
FROM Emp
WHERE
Hiredate NOT IN('20-FEB-1981', '09-JUN-1981')
/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL HIREDATE
---------- ---------- --------KING
5000 17-NOV-81
BLAKE
2850 01-MAY-81
JONES
2975 02-APR-81
MARTIN
1250 28-SEP-81
TURNER
1500 08-SEP-81
JAMES
950 03-DEC-81
WARD
1250 22-FEB-81
FORD
3000 03-DEC-81
SMITH
800 17-DEC-80
SCOTT
3000 09-DEC-82
ADAMS
1100 12-JAN-83
ENAME
SAL HIREDATE
---------- ---------- --------MILLER
1300 23-JAN-82
12 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Comm
2 FROM Emp
3 WHERE Comm = NULL;
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
COMM
---------- ---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
JAMES
950
FORD
3000
SMITH
800
SCOTT
3000
ADAMS
1100
MILLER
1300
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2 FROM Emp
3* WHERE Comm IS NOT NULL
SQL> /
ENAME
SAL
COMM
---------- ---------- ---------MARTIN
1250
1400
ALLEN
1600
300
TURNER
1500
0
WARD
1250
500
SQL> cl scr
SQL> SELECT Ename, Deptno, Job, Sal
2 FROM Emp;
ENAME
DEPTNO JOB
SAL
---------- ---------- --------- ---------KING
10 PRESIDENT
5000
BLAKE
30 MANAGER
2850
CLARK
10 MANAGER
2450
JONES
20 MANAGER
2975
MARTIN
30 SALESMAN
1250
ALLEN
30 SALESMAN
1600
TURNER
30 SALESMAN
1500
JAMES
30 CLERK
950
WARD
30 SALESMAN
1250
FORD
20 ANALYST
3000
SMITH
20 CLERK
800
ENAME
DEPTNO JOB
SAL
---------- ---------- --------- ---------SCOTT
20 ANALYST
3000
ADAMS
20 CLERK
1100
MILLER
10 CLERK
1300
14 rows selected.
SQL> SELECT Ename, Deptno, Job, Sal
2 FROM Emp
3 WHERE Ename = 'SMITH';
ENAME
DEPTNO JOB
SAL
---------- ---------- --------- ---------SMITH
20 CLERK
800
SQL> cl scr
SQL> SELECT Ename, Sal, Job
2 FROM Emp;
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
2975
1250
1600
1500
950
1250
3000
800
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ENAME
SAL JOB
---------- ---------- --------SCOTT
3000 ANALYST
ADAMS
1100 CLERK
MILLER
1300 CLERK
14 rows selected.
SQL>
2
3
4
5
6
SELECT
Ename,
Job
FROM Emp
WHERE
Ename LIKE 'S%';
ENAME
---------SMITH
SCOTT
JOB
--------CLERK
ANALYST
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename,
Job
FROM Emp
WHERE
Ename NOT LIKE 'S%'
/
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
ADAMS
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ENAME
JOB
---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MILLER
CLERK
12 rows selected.
SQL>
2
3
4
5
6
SELECT
Ename,
Job
FROM Emp
WHERE
Ename LIKE '_A%';
ENAME
---------MARTIN
JAMES
WARD
JOB
--------SALESMAN
CLERK
SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename,
Job
FROM Emp
WHERE
Ename LIKE '%A%'
/
ENAME
---------BLAKE
CLARK
MARTIN
ALLEN
JAMES
WARD
ADAMS
JOB
--------MANAGER
MANAGER
SALESMAN
SALESMAN
CLERK
SALESMAN
CLERK
7 rows selected.
SQL>
2
3
4
5
6
SELECT
Ename,
Sal
FROM Emp
WHERE
Ename = 'SM%';
no rows selected
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 WHERE Job = 'MANAGER';
ENAME
SAL
DEPTNO JOB
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, HireDate
2 FROM Emp
3 WHERE HireDate = '03-DEC-81';
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------JAMES
950
30 03-DEC-81
FORD
3000
20 03-DEC-81
SQL> SELECT Ename, Sal, Deptno, HireDate
2 FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------JAMES
950
30 03-DEC-81
FORD
3000
20 03-DEC-81
SQL> SELECT Ename, Sal, Deptno, HireDate
2 FROM Emp
3 WHERE HireDate LIKE '03-DEC-81';
ENAME
SAL
DEPTNO HIREDATE
---------- ---------- ---------- --------JAMES
950
30 03-DEC-81
FORD
3000
20 03-DEC-81
SQL> SELECT Ename, Sal, Deptno, HireDate
2 FROM Emp
3 WHERE HireDate LIKE '03-DEC-1981';
no rows selected
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
1 row created.
SQL> cl scr
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
50
60
70
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING_DESK
CARGO_DECK
COURIER%RACK
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
DELHI
7 rows selected.
SQL> SELECT Deptno, Dname, Loc
2 FROM Dept
3 WHERE Dname LIKE '%_%';
DEPTNO
---------10
20
30
40
50
60
70
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING_DESK
CARGO_DECK
COURIER%RACK
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
DELHI
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> INSERT INTO Dept
2 VALUES(80, INV\STOCK ROOM', 'KOLKATA');
ERROR:
ORA-01756: quoted string not properly terminated
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING_DESK
CARGO_DECK
COURIER%RACK
INV\STOCK ROOM
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
DELHI
KOLKATA
8 rows selected.
SQL> SELECT Deptno, Dname, Loc
2 FROM Dept
3 WHERE Dname LIKE '%\_%';
DEPTNO DNAME
LOC
---------- -------------- ------------80 INV\STOCK ROOM KOLKATA
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------50
60
DNAME
-------------SHIPPING_DESK
CARGO_DECK
LOC
------------CHENNAI
MUMBAI
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------50
60
DNAME
-------------SHIPPING_DESK
CARGO_DECK
LOC
------------CHENNAI
MUMBAI
SQL> ED
Wrote file afiedt.buf
1
2
DNAME
-------------SHIPPING_DESK
CARGO_DECK
LOC
------------CHENNAI
MUMBAI
SQL> cl scr
SQL> SELECT Ename FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> SELECT Ename, Sal FROM Emp;
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, job
2 FROM Emp;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
FORD
3000
20 ANALYST
SMITH
800
20 CLERK
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
14 rows selected.
SQL> SELECT Ename, Sal, Deptno, job
2 FROM Emp
3 ORDER BY Ename;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------ADAMS
1100
20 CLERK
ALLEN
1600
30 SALESMAN
BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
FORD
3000
20 ANALYST
JAMES
950
30 CLERK
JONES
2975
20 MANAGER
KING
5000
10 PRESIDENT
MARTIN
1250
30 SALESMAN
MILLER
1300
10 CLERK
SCOTT
3000
20 ANALYST
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SMITH
800
20 CLERK
TURNER
1500
30 SALESMAN
WARD
1250
30 SALESMAN
14 rows selected.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
CLARK
2450
10 MANAGER
MILLER
1300
10 CLERK
JONES
2975
20 MANAGER
SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
SMITH
800
20 CLERK
FORD
3000
20 ANALYST
BLAKE
2850
30 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------MILLER
1300
10 CLERK
CLARK
2450
10 MANAGER
KING
5000
10 PRESIDENT
SMITH
800
20 CLERK
ADAMS
1100
20 CLERK
JONES
2975
20 MANAGER
FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
JAMES
950
30 CLERK
MARTIN
1250
30 SALESMAN
WARD
1250
30 SALESMAN
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------TURNER
1500
30 SALESMAN
ALLEN
1600
30 SALESMAN
BLAKE
2850
30 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------MILLER
1300
10 CLERK
CLARK
2450
10 MANAGER
KING
5000
10 PRESIDENT
SMITH
800
20 CLERK
ADAMS
1100
20 CLERK
JONES
2975
20 MANAGER
SCOTT
3000
20 ANALYST
FORD
3000
20 ANALYST
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
MARTIN
1250
30 SALESMAN
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------TURNER
1500
30 SALESMAN
ALLEN
1600
30 SALESMAN
BLAKE
2850
30 MANAGER
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------TURNER
1500
0
1500
ALLEN
1600
300
1900
WARD
1250
500
1750
MARTIN
1250
1400
2650
KING
5000
5000
FORD
3000
3000
SCOTT
3000
3000
MILLER
1300
1300
ADAMS
1100
1100
SMITH
800
800
JAMES
950
950
ENAME
SAL
COMM
TOTSAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------SMITH
800
800
JAMES
950
950
ADAMS
1100
1100
MILLER
1300
1300
TURNER
1500
0
1500
WARD
1250
500
1750
ALLEN
1600
300
1900
CLARK
2450
2450
MARTIN
1250
1400
2650
BLAKE
2850
2850
JONES
2975
2975
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------FORD
3000
3000
SCOTT
3000
3000
KING
5000
5000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------SMITH
800
800
JAMES
950
950
ADAMS
1100
1100
MILLER
1300
1300
TURNER
1500
0
1500
WARD
1250
500
1750
ALLEN
1600
300
1900
CLARK
2450
2450
MARTIN
1250
1400
2650
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
BLAKE
JONES
2850
2975
2850
2975
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------FORD
3000
3000
SCOTT
3000
3000
KING
5000
5000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------SMITH
800
800
ALLEN
1600
300
1900
WARD
1250
500
1750
JONES
2975
2975
MARTIN
1250
1400
2650
BLAKE
2850
2850
CLARK
2450
2450
SCOTT
3000
3000
KING
5000
5000
TURNER
1500
0
1500
ADAMS
1100
1100
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------JAMES
950
950
FORD
3000
3000
MILLER
1300
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------SMITH
800
800
JAMES
950
950
ADAMS
1100
1100
MILLER
1300
1300
TURNER
1500
0
1500
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
WARD
ALLEN
CLARK
MARTIN
BLAKE
JONES
1250
1600
2450
1250
2850
2975
500
300
1400
1750
1900
2450
2650
2850
2975
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------FORD
3000
3000
SCOTT
3000
3000
KING
5000
5000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Comm, Sal + NVL(Comm, 0) TotSal
2 FROM Emp
3* ORDER BY 5
SQL> /
ORDER BY 5
*
ERROR at line 3:
ORA-01785: ORDER BY item must be the number of a SELECT-list expression
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Comm, Sal + NVL(Comm, 0) TotSal
2 FROM Emp
3* ORDER BY 4, 2 DESC, 1, Comm
SQL> /
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------SMITH
800
800
JAMES
950
950
ADAMS
1100
1100
MILLER
1300
1300
TURNER
1500
0
1500
WARD
1250
500
1750
ALLEN
1600
300
1900
CLARK
2450
2450
MARTIN
1250
1400
2650
BLAKE
2850
2850
JONES
2975
2975
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------FORD
3000
3000
SCOTT
3000
3000
KING
5000
5000
14 rows selected.
SQL> SPOOL OFF
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
SELECT
'ORACLE' String,
LOWER('ORACLE') Lower
FROM DUAL;
STRING LOWER
------ -----ORACLE oracle
SQL> SELECT Ename, Job, Sal, HireDate
2 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
SAL HIREDATE
--------- ---------- --------PRESIDENT
5000 17-NOV-81
MANAGER
2850 01-MAY-81
MANAGER
2450 09-JUN-81
MANAGER
2975 02-APR-81
SALESMAN
1250 28-SEP-81
SALESMAN
1600 20-FEB-81
SALESMAN
1500 08-SEP-81
CLERK
950 03-DEC-81
SALESMAN
1250 22-FEB-81
ANALYST
3000 03-DEC-81
CLERK
800 17-DEC-80
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL HIREDATE
--------- ---------- --------ANALYST
3000 09-DEC-82
CLERK
1100 12-JAN-83
CLERK
1300 23-JAN-82
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT LOWER(Ename) Ename, LOWER(Job) Job, Sal, HireDate
2* FROM Emp
SQL> /
ENAME
---------king
blake
clark
jones
martin
allen
turner
james
ward
ford
smith
JOB
SAL HIREDATE
--------- ---------- --------president
5000 17-NOV-81
manager
2850 01-MAY-81
manager
2450 09-JUN-81
manager
2975 02-APR-81
salesman
1250 28-SEP-81
salesman
1600 20-FEB-81
salesman
1500 08-SEP-81
clerk
950 03-DEC-81
salesman
1250 22-FEB-81
analyst
3000 03-DEC-81
clerk
800 17-DEC-80
ENAME
JOB
SAL HIREDATE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
---------scott
adams
miller
14 rows selected.
SQL> cl scr
SQL> SELECT
2 LOWER(Ename)||' is Working As '||Job Employee
3 FROM Emp;
EMPLOYEE
---------------------------------king is Working As PRESIDENT
blake is Working As MANAGER
clark is Working As MANAGER
jones is Working As MANAGER
martin is Working As SALESMAN
allen is Working As SALESMAN
turner is Working As SALESMAN
james is Working As CLERK
ward is Working As SALESMAN
ford is Working As ANALYST
smith is Working As CLERK
EMPLOYEE
---------------------------------scott is Working As ANALYST
adams is Working As CLERK
miller is Working As CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
LOWER(Ename)||' is Working As '||Job Employee
FROM Emp
WHERE LOWER(Job) = 'manager'
/
EMPLOYEE
---------------------------------blake is Working As MANAGER
clark is Working As MANAGER
jones is Working As MANAGER
SQL> cl scr
SQL>
2
3
4
SELECT
'oracle' String,
UPPER('oracle') Upper
FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
STRING UPPER
------ -----oracle ORACLE
SQL> SELECT Ename, UPPER(Ename) Upper
2 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
UPPER
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
---------SCOTT
ADAMS
MILLER
UPPER
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL>
2
3
4
SELECT
Ename||' is Designated As '||LOWER(Job)
FROM Emp
WHERE Job = 'MANAGER';
ENAME||'ISDESIGNATEDAS'||LOWER(JOB)
------------------------------------BLAKE is Designated As manager
CLARK is Designated As manager
JONES is Designated As manager
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
Ename||' is Designated As '||LOWER(Job) Ename
FROM Emp
WHERE Job = UPPER('manager')
/
ENAME
------------------------------------BLAKE is Designated As manager
CLARK is Designated As manager
JONES is Designated As manager
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
SELECT
'oracle corporation' String,
INITCAP('oracle corporation') InitCap
FROM DUAl;
STRING
INITCAP
------------------ -----------------oracle corporation Oracle Corporation
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'sample text for demonstration purpose' String,
INITCAP('sample text for demonstration purpose') InitCap
FROM DUAL
/
STRING
INITCAP
------------------------------------- ------------------------------------sample text for demonstration purpose Sample Text For Demonstration Purpose
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'sample1text@for4demonstration%purpose' String,
INITCAP('sample1text@for4demonstration%purpose') InitCap
FROM DUAL
/
STRING
INITCAP
------------------------------------- ------------------------------------sample1text@for4demonstration%purpose Sample1text@For4demonstration%Purpose
SQL> cl scr
SQL> SELECT
2 Ename, INITCAP(Ename) InitCap
3 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
INITCAP
---------King
Blake
Clark
Jones
Martin
Allen
Turner
James
Ward
Ford
Smith
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------SCOTT
ADAMS
MILLER
INITCAP
---------Scott
Adams
Miller
14 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
Ename||' is Designated As '||INITCAP(Job) Employee
FROM Emp
WHERE LOWER(Job) = 'manager';
EMPLOYEE
------------------------------------BLAKE is Designated As Manager
CLARK is Designated As Manager
JONES is Designated As Manager
SQL> cl scr
SQL>
2
3
4
5
SELECT
'Oracle' Strimg1,
'Corporation' String2,
CONCAT('Oracle', 'Corporation') Concat
FROM DUAL;
STRIMG STRING2
CONCAT
------ ----------- ----------------Oracle Corporation OracleCorporation
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'Oracle' Strimg1,
'Corporation' String2,
CONCAT('Oracle', CONCAT(' ', 'Corporation')) Concat
FROM DUAL
/
STRIMG STRING2
CONCAT
------ ----------- -----------------Oracle Corporation Oracle Corporation
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SELECT
'Oracle' Strimg1,
'Corporation' String2,
CONCAT('Oracle', CONCAT(' ', LOWER('Corporation'))) Concat
FROM DUAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
STRIMG STRING2
CONCAT
------ ----------- -----------------Oracle Corporation Oracle corporation
SQL> SPOOL OFF
SQL> SET VERIFY OFF
SQL> cl scr
SQL> SELECT
2
CONCAT(CONCAT(INITCAP(Ename),' is a '), Job) Job
3 FROM Emp
4 WHERE Deptno IN(10, 20);
JOB
------------------------King is a PRESIDENT
Clark is a MANAGER
Jones is a MANAGER
Ford is a ANALYST
Smith is a CLERK
Scott is a ANALYST
Adams is a CLERK
Miller is a CLERK
8 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
'ABCDEFGHIJ' String,
SUBSTR('ABCDEFGHIJ', 0, 5) SubStr
FROM DUAL;
STRING
SUBST
---------- ----ABCDEFGHIJ ABCDE
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'ABCDEFGHIJ' String,
SUBSTR('ABCDEFGHIJ', 4) SubStr
FROM DUAL
/
STRING
SUBSTR
---------- ------ABCDEFGHIJ DEFGHIJ
SQL> ED
Wrote file afiedt.buf
1
SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4*
SQL>
'ABCDEFGHIJ' String,
SUBSTR('ABCDEFGHIJ', 4, 4) SubStr
FROM DUAL
/
STRING
SUBS
---------- ---ABCDEFGHIJ DEFG
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'ABCDEFGHIJ' String,
SUBSTR('ABCDEFGHIJ', -5, 4) SubStr
FROM DUAL
/
STRING
SUBS
---------- ---ABCDEFGHIJ FGHI
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'ABCDEFGHIJ' String,
SUBSTR('ABCDEFGHIJ', 5.25, 4.65) SubStr
FROM DUAL
/
STRING
SUBS
---------- ---ABCDEFGHIJ EFGH
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'ABCDEFGHIJ' String,
SUBSTR('ABCDEFGHIJ', 5, -4) SubStr
FROM DUAL
/
STRING
S
---------- ABCDEFGHIJ
SQL> ED
Wrote file afiedt.buf
1
2
3
SELECT
'ABCDEFGHIJ' String,
NVL(SUBSTR('ABCDEFGHIJ', 5, &GNChars), 'Fatal Error! The Character Picker
is -VE OR 0...') SubStr
4* FROM DUAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for gnchars: 3
STRING
SUB
---------- --ABCDEFGHIJ EFG
SQL> /
Enter value for gnchars: 0
STRING
SUBSTR
---------- -----------------------------------------------ABCDEFGHIJ Fatal Error! The Character Picker is -VE OR 0...
SQL> /
Enter value for gnchars: -4
STRING
SUBSTR
---------- -----------------------------------------------ABCDEFGHIJ Fatal Error! The Character Picker is -VE OR 0...
SQL> cl scr
SQL>
2
3
4
ENAME
---------BLAKE
CLARK
JONES
JOB
DEPTNO
--------- ---------MANAGER
30
MANAGER
10
MANAGER
20
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Job, SUBSTR(Job, 4, 3) SubStr, Deptno
2* FROM Emp
SQL> /
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
SUB
DEPTNO
--- ---------SID
10
AGE
30
AGE
10
AGE
20
ESM
30
ESM
30
ESM
30
RK
30
ESM
30
LYS
20
RK
20
ENAME
JOB
SUB
DEPTNO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
---------SCOTT
ADAMS
MILLER
--------ANALYST
CLERK
CLERK
--- ---------LYS
20
RK
20
RK
10
14 rows selected.
SQL> cl scr
SQL> SELECT
2 CONCAT(
3
CONCAT(
4
CONCAT(
5
CONCAT(INITCAP(Ename), '''s Designation is '), INITCAP(Job)),
' But He is a '),
6
CONCAT(
7
INITCAP(
SUBSTR(Job, 1, 3)),' Eater.'))
8 FROM Emp
9 WHERE SUBSTR(Job, 4, 3) = UPPER('Age');
CONCAT(CONCAT(CONCAT(CONCAT(INITCAP(ENAME),'''SDESIGNATIONIS
-----------------------------------------------------------Blake's Designation is Manager But He is a Man Eater.
Clark's Designation is Manager But He is a Man Eater.
Jones's Designation is Manager But He is a Man Eater.
SQL> cl scr
SQL>
2
3
4
SELECT
'ORACLE' String,
LENGTH('ORACLE') Length
FROM DUAL;
STRING
LENGTH
------ ---------ORACLE
6
SQL> SELECT
2 Ename||' Your Name is A Collection of '||LENGTH(Ename)||' Characters.'
EnameLength
3 FROM Emp;
ENAMELENGTH
-------------------------------------------------------------------------------KING Your Name is A Collection of 4 Characters.
BLAKE Your Name is A Collection of 5 Characters.
CLARK Your Name is A Collection of 5 Characters.
JONES Your Name is A Collection of 5 Characters.
MARTIN Your Name is A Collection of 6 Characters.
ALLEN Your Name is A Collection of 5 Characters.
TURNER Your Name is A Collection of 6 Characters.
JAMES Your Name is A Collection of 5 Characters.
WARD Your Name is A Collection of 4 Characters.
FORD Your Name is A Collection of 4 Characters.
SMITH Your Name is A Collection of 5 Characters.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAMELENGTH
-------------------------------------------------------------------------------SCOTT Your Name is A Collection of 5 Characters.
ADAMS Your Name is A Collection of 5 Characters.
MILLER Your Name is A Collection of 6 Characters.
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Ename||' Your Name is A Collection of '||LENGTH(Ename)||' Characters.'
EnameLength
3 FROM Emp
4* WHERE LENGTH(Ename) = &GLength
SQL> /
Enter value for glength: 4
ENAMELENGTH
-------------------------------------------------------------------------------KING Your Name is A Collection of 4 Characters.
WARD Your Name is A Collection of 4 Characters.
FORD Your Name is A Collection of 4 Characters.
SQL> /
Enter value for glength: 5
ENAMELENGTH
-------------------------------------------------------------------------------BLAKE Your Name is A Collection of 5 Characters.
CLARK Your Name is A Collection of 5 Characters.
JONES Your Name is A Collection of 5 Characters.
ALLEN Your Name is A Collection of 5 Characters.
JAMES Your Name is A Collection of 5 Characters.
SMITH Your Name is A Collection of 5 Characters.
SCOTT Your Name is A Collection of 5 Characters.
ADAMS Your Name is A Collection of 5 Characters.
8 rows selected.
SQL> Ed
Wrote file afiedt.buf
1 SELECT
2 Ename||' Your Name is A Collection of '||LENGTH(Ename)||' Characters.'
EnameLength
3 FROM Emp
4* WHERE LENGTH(Ename) = &GLength AND Ename LIKE '%A%'
SQL> /
Enter value for glength: 5
ENAMELENGTH
-------------------------------------------------------------------------------BLAKE Your Name is A Collection of 5 Characters.
CLARK Your Name is A Collection of 5 Characters.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JOB
--------MANAGER
MANAGER
MANAGER
ANALYST
ANALYST
SQL> cl scr
SQL> SELECT
2 INTICAP(Ename),
3 Job
4 FROM Emp
5 WHERE SUBSTR(Job, 4, LENGTH(SUBSTR(Job, 4, 3))) = 'AGE';
INTICAP(Ename),
*
ERROR at line 2:
ORA-00904: "INTICAP": invalid identifier
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
INITCAP(Ename),
Job
FROM Emp
WHERE SUBSTR(Job, 4, LENGTH(SUBSTR(Job, 4, 3))) = 'AGE'
/
INITCAP(EN
---------Blake
Clark
Jones
JOB
--------MANAGER
MANAGER
MANAGER
SQL> cl scr
SQL>
2
3
4
SELECT
'STRING' Original,
INSTR('STRING' , 'R') InString
FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ORIGIN
INSTRING
------ ---------STRING
3
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'STRING' Original,
INSTR('STRING' , 'RIN', 2) InString
FROM DUAL
/
ORIGIN
INSTRING
------ ---------STRING
3
SQL> fsfx/
SP2-0042: unknown command "fsfx/" - rest of line ignored.
SQL> /
ORIGIN
INSTRING
------ ---------STRING
3
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'STRING' Original,
INSTR('STRING' , 'RN', 2) InString
FROM DUAL
/
ORIGIN
INSTRING
------ ---------STRING
0
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', 3, 2) InString
FROM DUAL
/
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
14
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4*
SQL>
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', 3, 1) InString
FROM DUAL
/
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
5
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', 2, 1) InString
FROM DUAL
/
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
2
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', 2, 2) InString
FROM DUAL
/
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
5
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', 2, 3) InString
FROM DUAL
/
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
14
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', 5, 3) InString
FROM DUAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
0
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'CORPORATE FLOOR' Original,
INSTR('CORPORATE FLOOR', 'OR', -7, 1) InString
FROM DUAL
/
ORIGINAL
INSTRING
--------------- ---------CORPORATE FLOOR
5
SQL> cl scr
SQL>
2
3
4
SELECT
Ename, Job, INSTR(Job, 'A', 1, 2) InString
FROM Emp
WHERE Job = 'MANAGER';
ENAME
---------BLAKE
CLARK
JONES
JOB
INSTRING
--------- ---------MANAGER
4
MANAGER
4
MANAGER
4
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Ename,
Job Original,
SUBSTR(Job,INSTR(Job, 'A', 1, 2), 3) SubString
FROM Emp
WHERE Job = 'MANAGER';
ENAME
---------BLAKE
CLARK
JONES
SQL>
2
3
4
5
6
ORIGINAL
--------MANAGER
MANAGER
MANAGER
SUB
--AGE
AGE
AGE
SELECT
Ename,
Job Original,
SUBSTR(Job,INSTR(Job, 'A', 1, 2), 3) SubString
FROM Emp
WHERE SUBSTR(Job, INSTR(Job, 'A', 1, 2), 1) = 'A';
ENAME
ORIGINAL SUB
---------- --------- --Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
WARD
FORD
SCOTT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
SALESMAN
ANALYST
ANALYST
AGE
AGE
AGE
AN
AN
AN
AN
ALY
ALY
9 rows selected.
SQL> cl scr
SQL>
2
3
4
5
SELECT
'Sample_Text' String,
'String',
'Text'
FROM DUAL;
STRING
'STRIN 'TEX
----------- ------ ---Sample_Text String Text
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'Sample_Text' String,
SUBSTR('Sample_Text', 1, 6) Sample,
SUBSTR('Sample_Text', 8) Text
FROM DUAL
/
STRING
SAMPLE TEXT
----------- ------ ---Sample_Text Sample Text
SQL> cl scr
SQL>
2
3
4
5
SELECT
'Sample_Text' OrgString,
SUBSTR('Sample_Text', 1, INSTR('Sample_Text', '_', 1, 1) - 1) Sample,
SUBSTR('Sample_Text', INSTR('Sample_Text', '_', 1, 1) + 1) Text
FROM DUAL;
ORGSTRING
SAMPLE TEXT
----------- ------ ---Sample_Text Sample Text
SQL> ED
Wrote file afiedt.buf
1
2
3
SELECT
'&GString1' OrgString,
SUBSTR('&GString2', 1, INSTR('&GString3', '_', 1, 1) - 1) Sample,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
for
for
for
for
for
gstring1:
gstring2:
gstring3:
gstring4:
gstring5:
ATTITUDE_BEHAVIOUR
ATTITUDE_BEHAVIOUR
ATTITUDE_BEHAVIOUR
ATTITUDE_BEHAVIOUR
ATTITUDE_BEHAVIOUR
ORGSTRING
SAMPLE
TEXT
------------------ -------- --------ATTITUDE_BEHAVIOUR ATTITUDE BEHAVIOUR
SQL> COLUMN String1 FORMAT A7
SQL> COLUMN String2 FORMAT A7
SQL> COLUMN String3 FORMAT A7
SQL> SELECT
2 'APPLE_IS_FRUIT' OrgString,
3 SUBSTR('APPLE_IS_FRUIT', 1, INSTR('APPLE_IS_FRUIT', '_', 1, 1) - 1) String1,
4 SUBSTR('APPLE_IS_FRUIT',
5
(INSTR('APPLE_IS_FRUIT', '_', 1, 1) + 1),
6
(INSTR('APPLE_IS_FRUIT', '_', 1, 2) - 1) - ((INSTR('APPLE_IS_FRUIT', '_',
1, 1)))) String2,
7 SUBSTR('APPLE_IS_FRUIT', (INSTR('APPLE_IS_FRUIT', '_', 1, 2) + 1)) String3
8 FROM DUAL;
ORGSTRING
STRING1 STRING2 STRING3
-------------- ------- ------- ------APPLE_IS_FRUIT APPLE
IS
FRUIT
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
1) 4
5
6
(INSTR('125-23-46-235/A/C-12/B', '-', 1, 2)
235/A/C-12/B', '-', 1, 1)))) Street,
7 SUBSTR('125-23-46-235/A/C-12/B',
8
(INSTR('125-23-46-235/A/C-12/B', '-', 1, 2) +
9
(INSTR('125-23-46-235/A/C-12/B', '-', 1, 3)
235/A/C-12/B', '-', 1, 2)))) Lane,
10 SUBSTR('125-23-46-235/A/C-12/B',
11
(INSTR('125-23-46-235/A/C-12/B', '-', 1, 3) +
12
(INSTR('125-23-46-235/A/C-12/B', '/', 1, 1)
235/A/C-12/B', '-', 1, 3)))) Sector,
13 SUBSTR('125-23-46-235/A/C-12/B',
14
(INSTR('125-23-46-235/A/C-12/B', '/', 1, 1) +
15
(INSTR('125-23-46-235/A/C-12/B', '/', 1, 2)
235/A/C-12/B', '/', 1, 1)))) Building,
16 SUBSTR('125-23-46-235/A/C-12/B',
17
(INSTR('125-23-46-235/A/C-12/B', '/', 1, 2) +
18
(INSTR('125-23-46-235/A/C-12/B', '-', 1, 4)
235/A/C-12/B', '/', 1, 2)))) Floor,
19 SUBSTR('125-23-46-235/A/C-12/B',
20
(INSTR('125-23-46-235/A/C-12/B', '-', 1, 4) +
21
(INSTR('125-23-46-235/A/C-12/B', '/', 1, 3)
235/A/C-12/B', '-', 1, 4)))) Flat,
22 SUBSTR('125-23-46-235/A/C-12/B',
23
(INSTR('125-23-46-235/A/C-12/B', '/', 1, 3) +
24 FROM DUAL
25 /
- 1) - ((INSTR('125-23-46-
1),
- 1) - ((INSTR('125-23-46-
1),
- 1) - ((INSTR('125-23-46-
1),
- 1) - ((INSTR('125-23-46-
1),
- 1) - ((INSTR('125-23-46-
1),
- 1) - ((INSTR('125-23-46-
1)) Door
HOUSENO
AREA STREET LANE SECTOR BUILDING FLOOR
FLAT DOOR
---------------------- ---- ------ ---- ------ -------- -------- ---- ---125-23-46-235/A/C-12/B 125 23
46
235
A
C
12
B
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL>
2
3
4
SELECT
'Page 1' MyString,
LPAD('Page 1', 15, '*.') LPadded
FROM DUAL;
MYSTRI LPADDED
------ --------------Page 1 *.*.*.*.*Page 1
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'Page 1' MyString,
LPAD('Page 1', 15) LPadded
FROM DUAL
/
MYSTRI LPADDED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
------ --------------Page 1
Page 1
SQL>
2
3
4
SELECT
Ename,
LPAD(Ename, 10, '-') LPad
FROM Emp WHERE Sal >= 2500;
ENAME
---------KING
BLAKE
JONES
FORD
SCOTT
LPAD
---------------KING
-----BLAKE
-----JONES
------FORD
-----SCOTT
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
Ename,
LPAD(Ename, 10) LPad
FROM Emp WHERE Sal >= 2500
/
ENAME
LPAD
---------- ---------KING
KING
BLAKE
BLAKE
JONES
JONES
FORD
FORD
SCOTT
SCOTT
SQL>
2
3
4
SELECT
'Page 1' String1,
RPAD('Page 1' , 15, '*.') RPad
FROM DUAL;
STRING RPAD
------ --------------Page 1 Page 1*.*.*.*.*
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'Page 1' String1,
RPAD('Page 1' , 15) RPad
FROM DUAL
/
STRING RPAD
------ --------------Page 1 Page 1
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
SELECT
Ename,
LPAD(RPAD(Ename, 10, '-'), 15, '-') Center
FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
CENTER
-------------------KING----------BLAKE---------CLARK---------JONES---------MARTIN--------ALLEN---------TURNER--------JAMES---------WARD----------FORD----------SMITH-----
ENAME
---------SCOTT
ADAMS
MILLER
CENTER
-------------------SCOTT---------ADAMS---------MILLER----
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
Ename,
LPAD(RPAD(Ename, 10), 15) Center
FROM Emp
/
ENAME
CENTER
---------- --------------KING
KING
BLAKE
BLAKE
CLARK
CLARK
JONES
JONES
MARTIN
MARTIN
ALLEN
ALLEN
TURNER
TURNER
JAMES
JAMES
WARD
WARD
FORD
FORD
SMITH
SMITH
ENAME
CENTER
---------- --------------SCOTT
SCOTT
ADAMS
ADAMS
MILLER
MILLER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
'xyzXxyLAST WORD' OrgStr,
LTRIM('xyzXxyLAST WORD', 'xy')
FROM DUAL;
Ltrim
ORGSTR
LTRIM
--------------- ------------xyzXxyLAST WORD zXxyLAST WORD
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'xyzXxyLAST WORD' OrgStr,
LTRIM('xyzXxyLAST WORD', 'xzy')
FROM DUAL
/
Ltrim
ORGSTR
LTRIM
--------------- -----------xyzXxyLAST WORD XxyLAST WORD
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'xyzXxyLAST WORD' OrgStr,
LTRIM('xyzXxyLAST WORD', 'xzyX')
FROM DUAL
/
Ltrim
ORGSTR
LTRIM
--------------- --------xyzXxyLAST WORD LAST WORD
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'
LAST WORD' OrgStr,
LTRIM('
LAST WORD') Ltrim
FROM DUAL
/
ORGSTR
LTRIM
------------------ --------LAST WORD LAST WORD
SQL> cl scr
SQL> SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2 'BROWNINGyxXxy' String
3 RTRIM('BROWNINGyxXxy', 'xy') Rtrim
4 FROM DUAL;
RTRIM('BROWNINGyxXxy', 'xy') Rtrim
*
ERROR at line 3:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'BROWNINGyxXxy' String,
RTRIM('BROWNINGyxXxy', 'xy') Rtrim
FROM DUAL
/
STRING
RTRIM
------------- ----------BROWNINGyxXxy BROWNINGyxX
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'BROWNINGyxXxy' String,
RTRIM('BROWNINGyxXxy', 'xyX') Rtrim
FROM DUAL
/
STRING
RTRIM
------------- -------BROWNINGyxXxy BROWNING
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'BROWNING
RTRIM('BROWNING
FROM DUAL
/
' String,
') Rtrim
STRING
RTRIM
----------------- -------BROWNING
BROWNING
SQL> cl scr
SQL>
2
3
4
5
SELECT
Ename, Job, Sal
FROM Emp
WHERE
LTRIM(Job, 'MAN') LIKE 'GER';
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------BLAKE
CLARK
JONES
JOB
SAL
--------- ---------MANAGER
2850
MANAGER
2450
MANAGER
2975
SQL> cl scr
SQL>
2
3
4
SELECT
'MITHSS' String,
TRIM('S' FROM 'MITHSS') Trimmed
FROM DUAL;
STRING TRIM
------ ---MITHSS MITH
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'SSMITH' String,
TRIM('S' FROM 'SSMITH') Trimmed
FROM DUAL
/
STRING TRIM
------ ---SSMITH MITH
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'SSMITHSS' String,
TRIM('S' FROM 'SSMITHSS') Trimmed
FROM DUAL
/
STRING
TRIM
-------- ---SSMITHSS MITH
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'SSMITHSS' String,
TRIM(LEADING 'S' FROM 'SSMITHSS') Trimmed
FROM DUAL
/
STRING
TRIMME
-------- -----SSMITHSS MITHSS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'SSMITHSS' String,
TRIM(TRAILING 'S' FROM 'SSMITHSS') Trimmed
FROM DUAL
/
STRING
TRIMME
-------- -----SSMITHSS SSMITH
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'SSMITHSS' String,
TRIM(BOTH 'S' FROM 'SSMITHSS') Trimmed
FROM DUAL
/
STRING
TRIM
-------- ---SSMITHSS MITH
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'SSMITHSS' String,
3 TRIM(BOTH 'SO' FROM 'SOSMITHSOS') Trimmed
4* FROM DUAL
SQL> /
TRIM(BOTH 'SO' FROM 'SOSMITHSOS') Trimmed
*
ERROR at line 3:
ORA-30001: trim set should have only one character
SQL> cl scr
SQL>
2
3
4
SELECT
'JACK AND JUE' OrgStr,
REPLACE('JACK AND JUE' , 'J', 'BL') Replace
FROM DUAL;
ORGSTR
REPLACE
------------ -------------JACK AND JUE BLACK AND BLUE
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
'JACK AND JUE' OrgStr,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT Ename,
REPLACE(JOB, 'MAN', 'DAM') Replace
FROM Emp
WHERE Job = 'MANAGER'
/
ENAME
---------BLAKE
CLARK
JONES
SQL>
2
3
4
REPLACE
--------------------------DAMAGER
DAMAGER
DAMAGER
ENAME
JOB
REPLACE
---------- --------- --------KING
PRESIDENT RESIDENT
SQL> cl scr
SQL>
2
3
4
SELECT Job,
REPLACE (Job, 'MAN', 'EXECUTIVE') Replace
FROM Emp
WHERE Job = 'SALESMAN';
JOB
--------REPLACE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
-------------------------------------------------------------------------------SALESMAN
SALESEXECUTIVE
SALESMAN
SALESEXECUTIVE
SALESMAN
SALESEXECUTIVE
JOB
--------REPLACE
-------------------------------------------------------------------------------SALESMAN
SALESEXECUTIVE
SQL> cl scr
SQL>
2
3
4
SELECT
Ename, Job,
TRANSLATE(Job, 'P', ' ') Translate
FROM Emp
WHERE Job = 'PRESIDENT';
ENAME
JOB
TRANSLATE
---------- --------- --------KING
PRESIDENT RESIDENT
SQL> ED
Wrote file afiedt.buf
1 SELECT
Ename, Job,
2 TRANSLATE(Job, 'P') Translate
3 FROM Emp
4* WHERE Job = 'PRESIDENT'
SQL> /
TRANSLATE(Job, 'P') Translate
*
ERROR at line 2:
ORA-00909: invalid number of arguments
SQL>
2
3
4
SELECT Job,
TRANSLATE(Job, 'MN', 'DM') Translate
FROM Emp
WHERE Job = 'MANAGER';
JOB
--------MANAGER
MANAGER
MANAGER
TRANSLATE
--------DAMAGER
DAMAGER
DAMAGER
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> SELECT
2 'The Data is : '||CHR(67)||CHR(65)||CHR(84) Sample
3 FROM DUAL;
SAMPLE
----------------The Data is : CAT
SQL> cl scr
SQL> SELECT
2 'The Character of ASCII '||&GVal1||' is '||CHR(&GVal2) "ASCII 2 CHAR"
3 FROM DUAL;
Enter value for gval1: 1
Enter value for gval2: 1
ASCII 2 CHAR
----------------------------The Character of ASCII 1 is
SQL> /
Enter value for gval1: 2
Enter value for gval2: 2
ASCII 2 CHAR
----------------------------The Character of ASCII 2 is
SQL> /
Enter value for gval1: 3
Enter value for gval2: 3
ASCII 2 CHAR
----------------------------The Character of ASCII 3 is
SQL> /
Enter value for gval1: 4
Enter value for gval2: 4
ASCII 2 CHAR
----------------------------The Character of ASCII 4 is
SQL> /
Enter value for gval1: 5
Enter value for gval2: 5
ASCII 2 CHAR
----------------------------The Character of ASCII 5 is
SQL> cl scr
SQL> COLUMN Empno FORMAT 9999
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
SELECT
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> SELECT
2 'Employee Number : '||Empno||CHR(10)||
3 'Employee Name
: '||Ename||CHR(10)||
4 'Employee Job
: '||Job||CHR(10)||
5 'Employee Salary : '||Sal||CHR(10)||
6 'Employee Comm
: '||Comm||CHR(10)||
7 'Employee HireDT : '||HireDate||CHR(10)||
8 'Employee Deptno : '||Deptno||CHR(10)||
9 'Employee MGR
: '||MGR||CHR(10) "Employees Report"
10 FROM Emp
11 WHERE Empno = &GEmpno;
Enter value for gempno: 7839
Employees Report
-------------------------------------------------------------------------------Employee Number : 7839
Employee Name
: KING
Employee Job
: PRESIDENT
Employee Salary : 5000
Employee Comm
:
Employee HireDT : 17-NOV-81
Employee Deptno : 10
Employee MGR
:
SQL> /
Enter value for gempno: 7654
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Employees Report
-------------------------------------------------------------------------------Employee Number : 7654
Employee Name
: MARTIN
Employee Job
: SALESMAN
Employee Salary : 1250
Employee Comm
: 1400
Employee HireDT : 28-SEP-81
Employee Deptno : 30
Employee MGR
: 7698
SQL> /
Enter value for gempno: 7566
Employees Report
-------------------------------------------------------------------------------Employee Number : 7566
Employee Name
: JONES
Employee Job
: MANAGER
Employee Salary : 2975
Employee Comm
:
Employee HireDT : 02-APR-81
Employee Deptno : 20
Employee MGR
: 7839
SQL> cl scr
SQL> SELECT
2 'The ASCII Value of Character '||'&GVal1'||' is ||ASCII('&GVal2') "CHAR 2
ASCII"
3 FROM DUAL;
Enter value for gval1: A
Enter value for gval2: A
ERROR:
ORA-01756: quoted string not properly terminated
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The ASCII Value of Character '||'&GVal1'||' is '||ASCII('&GVal2') "CHAR 2
ASCII"
3* FROM DUAL
SQL> /
Enter value for gval1: A
Enter value for gval2: A
CHAR 2 ASCII
-----------------------------------The ASCII Value of Character A is 65
SQL> /
Enter value for gval1: Z
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPNAME
--------------Sample Name
Sample&Name
Sample&Name
Sample&Name
Sample&Name
Sample&Name
6 rows selected.
SQL> SPOOL OFF
SQL> SET VERIFY OFF
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
COMM
---------- ---------- ---------MARTIN
1250
1400
SQL> cl scr
SQL> SELECT 'The Current calender in Server is : '||SYSDATE Today FROM DUAL;
TODAY
--------------------------------------------The Current calender in Server is : 07-JUL-10
SQL> cl scr
SQL> SELECT SYSDATE Today, SYSDATE + 3 "3 Days"
2 FROM DUAL;
TODAY
3 Days
--------- --------07-JUL-10 10-JUL-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE Today,
SYSDATE + 45 "45 Days"
FROM DUAL
/
TODAY
45 Days
--------- --------07-JUL-10 21-AUG-10
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
SYSDATE Today,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
SYSDATE Today,
SYSDATE - 450 "450 Days"
FROM DUAL
/
TODAY
450 Days
--------- --------07-JUL-10 13-APR-09
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE Today,
SYSDATE - 45 "45 Days"
FROM DUAL
/
TODAY
45 Days
--------- --------07-JUL-10 23-MAY-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE Today,
SYSDATE - 5500 "5500 Days"
FROM DUAL
/
TODAY
5500 Days
--------- --------07-JUL-10 16-JUN-95
SQL> cl scr
SQL> SELECT Ename, SYSDATE Today, HireDate, SYSDATE - HireDate DateDiff
2 FROM Emp;
ENAME
---------KING
BLAKE
TODAY
HIREDATE
DATEDIFF
--------- --------- ---------07-JUL-10 17-NOV-81 10459.4756
07-JUL-10 01-MAY-81 10659.4756
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
09-JUN-81
02-APR-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
10620.4756
10688.4756
10509.4756
10729.4756
10529.4756
10443.4756
10727.4756
10443.4756
10794.4756
ENAME
---------SCOTT
ADAMS
MILLER
TODAY
--------07-JUL-10
07-JUL-10
07-JUL-10
HIREDATE
--------09-DEC-82
12-JAN-83
23-JAN-82
DATEDIFF
---------10072.4756
10038.4756
10392.4756
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
TODAY
--------07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
HIREDATE
DATEDIFF
--------- ---------17-NOV-81
10459
01-MAY-81
10659
09-JUN-81
10620
02-APR-81
10688
28-SEP-81
10509
20-FEB-81
10729
08-SEP-81
10529
03-DEC-81
10443
22-FEB-81
10727
03-DEC-81
10443
17-DEC-80
10794
ENAME
---------SCOTT
ADAMS
MILLER
TODAY
--------07-JUL-10
07-JUL-10
07-JUL-10
HIREDATE
DATEDIFF
--------- ---------09-DEC-82
10072
12-JAN-83
10038
23-JAN-82
10392
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
TODAY
--------07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
HIREDATE
DAYS
YEARS
--------- ---------- ---------01-MAY-81
10659
29
09-JUN-81
10620
29
02-APR-81
10688
29
20-FEB-81
10729
29
22-FEB-81
10727
29
17-DEC-80
10794
29
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
---------BLAKE
CLARK
JONES
ALLEN
WARD
SMITH
TODAY
--------07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
HIREDATE
DAYS
YEARS
--------- ---------- ---------01-MAY-81
-10659
29
09-JUN-81
-10620
29
02-APR-81
-10688
29
20-FEB-81
-10729
29
22-FEB-81
-10727
29
17-DEC-80
-10794
29
6 rows selected.
SQL> cl scr
SQL> SELECT Ename, HireDate, SYSDATE, SYSDATE + HireDate Added
2 FROM Emp;
SELECT Ename, HireDate, SYSDATE, SYSDATE + HireDate Added
*
ERROR at line 1:
ORA-00975: date + date not allowed
SQL> cl scr
SQL> SELECT
2 '07-JUL-10' Today,
3 '07-JUL-10' + 3 "3 Days"
4 FROM DUAL;
'07-JUL-10' + 3 "3 Days"
*
ERROR at line 3:
ORA-01722: invalid number
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> SELECT
2 SYSDATE Today,
3 SYSDATE - '01-MAY-10' Diff
4 FROM DUAL;
SYSDATE - '01-MAY-10' Diff
*
ERROR at line 3:
ORA-01722: invalid number
SQL> cl scr
SQL>
2
3
4
SELECT
SYSDATE Today,
SYSDATE + 90 "3 Months"
FROM DUAL;
TODAY
3 Months
--------- --------07-JUL-10 05-OCT-10
SQL>
2
3
4
SELECT
SYSDATE ToDay,
ADD_MONTHS(SYSDATE, 3) "3 Months"
FROM DUAL;
TODAY
3 Months
--------- --------07-JUL-10 07-OCT-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE ToDay,
ADD_MONTHS(SYSDATE, -3) "3 Months"
FROM DUAL
/
TODAY
3 Months
--------- --------07-JUL-10 07-APR-10
SQL> cl scr
SQL>
2
3
4
SELECT
Ename, Sal, SYSDATE Today, HireDate,
MONTHS_BETWEEN(SYSDATE, HireDate) "Months"
FROM Emp;
ENAME
SAL TODAY
HIREDATE
Months
---------- ---------- --------- --------- ---------KING
5000 07-JUL-10 17-NOV-81 343.693194
BLAKE
2850 07-JUL-10 01-MAY-81 350.209323
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
2450
2975
1250
1600
1500
950
1250
3000
800
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
07-JUL-10
09-JUN-81
02-APR-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
348.951258
351.177065
345.338355
352.59642
345.983516
343.144807
352.531903
343.144807
354.693194
ENAME
SAL TODAY
HIREDATE
Months
---------- ---------- --------- --------- ---------SCOTT
3000 07-JUL-10 09-DEC-82 330.951258
ADAMS
1100 07-JUL-10 12-JAN-83 329.854484
MILLER
1300 07-JUL-10 23-JAN-82 341.499645
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
Ename, Sal, SYSDATE Today, HireDate,
TRUNC(MONTHS_BETWEEN(SYSDATE, HireDate)) "Months"
FROM Emp
/
ENAME
SAL TODAY
HIREDATE
Months
---------- ---------- --------- --------- ---------KING
5000 07-JUL-10 17-NOV-81
343
BLAKE
2850 07-JUL-10 01-MAY-81
350
CLARK
2450 07-JUL-10 09-JUN-81
348
JONES
2975 07-JUL-10 02-APR-81
351
MARTIN
1250 07-JUL-10 28-SEP-81
345
ALLEN
1600 07-JUL-10 20-FEB-81
352
TURNER
1500 07-JUL-10 08-SEP-81
345
JAMES
950 07-JUL-10 03-DEC-81
343
WARD
1250 07-JUL-10 22-FEB-81
352
FORD
3000 07-JUL-10 03-DEC-81
343
SMITH
800 07-JUL-10 17-DEC-80
354
ENAME
SAL TODAY
HIREDATE
Months
---------- ---------- --------- --------- ---------SCOTT
3000 07-JUL-10 09-DEC-82
330
ADAMS
1100 07-JUL-10 12-JAN-83
329
MILLER
1300 07-JUL-10 23-JAN-82
341
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
SELECT
Ename, Sal, SYSDATE Today, HireDate,
TRUNC(MONTHS_BETWEEN(SYSDATE, HireDate)) "Months"
FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5 WHERE
6* TRUNC(MONTHS_BETWEEN(SYSDATE, HireDate)) > 343
SQL> /
ENAME
SAL TODAY
HIREDATE
Months
---------- ---------- --------- --------- ---------BLAKE
2850 07-JUL-10 01-MAY-81
350
CLARK
2450 07-JUL-10 09-JUN-81
348
JONES
2975 07-JUL-10 02-APR-81
351
MARTIN
1250 07-JUL-10 28-SEP-81
345
ALLEN
1600 07-JUL-10 20-FEB-81
352
TURNER
1500 07-JUL-10 08-SEP-81
345
WARD
1250 07-JUL-10 22-FEB-81
352
SMITH
800 07-JUL-10 17-DEC-80
354
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename, Sal, SYSDATE Today, HireDate,
TRUNC(MONTHS_BETWEEN(SYSDATE, HireDate)) "Months",
TRUNC(MONTHS_BETWEEN(SYSDATE, HireDate) / 12) "Years"
FROM Emp
WHERE
TRUNC(MONTHS_BETWEEN(SYSDATE, HireDate) / 12) > 28
/
ENAME
SAL TODAY
HIREDATE
Months
Years
---------- ---------- --------- --------- ---------- ---------BLAKE
2850 07-JUL-10 01-MAY-81
350
29
CLARK
2450 07-JUL-10 09-JUN-81
348
29
JONES
2975 07-JUL-10 02-APR-81
351
29
ALLEN
1600 07-JUL-10 20-FEB-81
352
29
WARD
1250 07-JUL-10 22-FEB-81
352
29
SMITH
800 07-JUL-10 17-DEC-80
354
29
6 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
'07-JUL-10' Today,
ADD_MONTHS('07-JUL-10', 3) Months
FROM DUAL;
TODAY
MONTHS
--------- --------07-JUL-10 07-OCT-10
SQL>
2
3
4
5
SELECT
'07-JUL-10' Today,
'07-FEB-10' Past,
MONTHS_BETWEEN('07-JUL-10', +
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'07-JUL-10' Today,
'07-FEB-10' Past,
MONTHS_BETWEEN('07-JUL-10', '07-JUL-10') Months
FROM DUAL
/
TODAY
PAST
MONTHS
--------- --------- ---------07-JUL-10 07-FEB-10
0
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'07-JUL-10' Today,
'07-FEB-10' Past,
MONTHS_BETWEEN('07-JUL-10', '07-FEB-10') Months
FROM DUAL
/
TODAY
PAST
MONTHS
--------- --------- ---------07-JUL-10 07-FEB-10
5
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'07-JUL-10' Today,
'07-FEB-10' Past,
MONTHS_BETWEEN('07-JUL-10', '10-FEB-10') Months
FROM DUAL
/
TODAY
PAST
MONTHS
--------- --------- ---------07-JUL-10 07-FEB-10 4.90322581
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'07-JUL-10' Today,
'07-FEB-10' Past,
MONTHS_BETWEEN('07-FEB-10', '07-JUL-10') Months
FROM DUAL
/
TODAY
PAST
MONTHS
--------- --------- ---------07-JUL-10 07-FEB-10
-5
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
SELECT
SYSDATE Today,
NEXT_DAY(SYSDATE, 'FRI') "Friday"
FROM DUAL;
TODAY
Friday
--------- --------07-JUL-10 09-JUL-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE Today,
NEXT_DAY(SYSDATE, 6) "Friday"
FROM DUAL
/
TODAY
Friday
--------- --------07-JUL-10 09-JUL-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE Today,
NEXT_DAY(SYSDATE, 'FRIDAY') "Friday"
FROM DUAL
/
TODAY
Friday
--------- --------07-JUL-10 09-JUL-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SYSDATE Today,
NEXT_DAY(SYSDATE, 'WED') "Wednesday"
FROM DUAL
/
TODAY
Wednesday
--------- --------07-JUL-10 14-JUL-10
SQL> cl scr
SQL>
2
3
4
SELECT
SYSDATE Today,
LAST_DAY(SYSDATE) LastDay
FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TODAY
LASTDAY
--------- --------07-JUL-10 31-JUL-10
SQL>
2
3
4
5
6
SELECT
'The Days Left in The Current Month Are : '||
(
LAST_DAY(SYSDATE) - SYSDATE
) "Days Left"
FROM DUAL;
Days Left
-------------------------------------------------------------------------------The Days Left in The Current Month Are : 24
SQL> cl scr
SQL>
2
3
4
5
SELECT
SYSDATE Today,
ROUND(SYSDATE) Round,
TRUNC(SYSDATE) Trunc
FROM DUAL;
TODAY
ROUND
TRUNC
--------- --------- --------07-JUL-10 08-JUL-10 07-JUL-10
SQL>
1
2
3
4
5*
R
SELECT
SYSDATE Today,
ROUND(SYSDATE) Round,
TRUNC(SYSDATE) Trunc
FROM DUAL
TODAY
ROUND
TRUNC
--------- --------- --------07-JUL-10 07-JUL-10 07-JUL-10
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
SYSDATE Today,
ROUND(SYSDATE, 'DAY') Round,
TRUNC(SYSDATE, 'DAY') Trunc
FROM DUAL
/
TODAY
ROUND
TRUNC
--------- --------- --------07-JUL-10 11-JUL-10 04-JUL-10
SQL> R
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5*
SELECT
SYSDATE Today,
ROUND(SYSDATE, 'DAY') Round,
TRUNC(SYSDATE, 'DAY') Trunc
FROM DUAL
TODAY
ROUND
TRUNC
--------- --------- --------07-JUL-10 04-JUL-10 04-JUL-10
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
SYSDATE Today,
ROUND(SYSDATE, 'MONTH') Round,
TRUNC(SYSDATE, 'MONTH') Trunc
FROM DUAL
/
TODAY
ROUND
TRUNC
--------- --------- --------07-JUL-10 01-JUL-10 01-JUL-10
SQL> /
TODAY
ROUND
TRUNC
--------- --------- --------16-JUL-10 01-AUG-10 01-JUL-10
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
SYSDATE Today,
ROUND(SYSDATE, 'YEAR') Round,
TRUNC(SYSDATE, 'YEAR') Trunc
FROM DUAL
cl scr
SQL>
1
2
3
4
5*
R
SELECT
SYSDATE Today,
ROUND(SYSDATE, 'YEAR') Round,
TRUNC(SYSDATE, 'YEAR') Trunc
FROM DUAL
TODAY
ROUND
TRUNC
--------- --------- --------07-JUL-10 01-JAN-11 01-JAN-10
SQL> R
1 SELECT
2 SYSDATE Today,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
COMM DIFF
---------- ---------- ---------- ----MARTIN
1250
1400 150ALLEN
1600
300 1300
TURNER
1500
0 1500
WARD
1250
500 750
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
SAL
COMM DIFF
---------- ---------- ---------- -----MARTIN
1250
1400 <150>
ALLEN
1600
300 1300
TURNER
1500
0 1500
WARD
1250
500
750
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
SAL
COMM DIFF
---------- ---------- ---------- -----MARTIN
1250
1400 (150)
ALLEN
1600
300 1300
TURNER
1500
0 1500
WARD
1250
500
750
SQL> cl scr
SQL> SELECT
2 'The Roman Number of Decimal '||&GVal1||' is '||
3 TO_CHAR(&GVal2, 'RN') "Deci 2 Roman"
4 FROM DUAL;
Enter value for gval1: 1
Enter value for gval2: 1
Deci 2 Roman
-----------------------------------------------The Roman Number of Decimal 1 is
I
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Roman Number of Decimal '||&GVal1||' is '||
3 LTRIM(TO_CHAR(&GVal2, 'RN')) "Deci 2 Roman"
4* FROM DUAL
SQL> /
Enter value for gval1: 8
Enter value for gval2: 8
Deci 2 Roman
-----------------------------------------------The Roman Number of Decimal 8 is VIII
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Roman Number of Decimal '||&GVal1||' is '||
3 LTRIM(TO_CHAR(&GVal2, 'rn')) "Deci 2 Roman"
4* FROM DUAL
SQL> /
Enter value for gval1: 8
Enter value for gval2: 8
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Deci 2 Roman
-----------------------------------------------The Roman Number of Decimal 8 is viii
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Roman Number of Decimal '||&GVal1||' is '||
3 LTRIM(TO_CHAR(&GVal2, 'RN')) "Deci 2 Roman"
4* FROM DUAL
SQL> /
Enter value for gval1: 2456
Enter value for gval2: 2456
Deci 2 Roman
--------------------------------------------------The Roman Number of Decimal 2456 is MMCDLVI
SQL> /
Enter value for gval1: 3999
Enter value for gval2: 3999
Deci 2 Roman
--------------------------------------------------The Roman Number of Decimal 3999 is MMMCMXCIX
SQL> /
Enter value for gval1: 4000
Enter value for gval2: 4000
Deci 2 Roman
--------------------------------------------------The Roman Number of Decimal 4000 is ###############
SQL> cl scr
SQL>
2
3
4
SELECT
Ename, Sal, Comm, TO_CHAR(Sal - Comm, '9G999D99S') Diff
FROM Emp
WHERE Comm IS NOT NULL;
ENAME
SAL
COMM DIFF
---------- ---------- ---------- --------MARTIN
1250
1400
150.00ALLEN
1600
300 1,300.00+
TURNER
1500
0 1,500.00+
WARD
1250
500
750.00+
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SELECT
Ename, Sal, Comm, TO_CHAR(Sal - Comm, 'S9G999D99') Diff
FROM Emp
WHERE Comm IS NOT NULL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
ENAME
SAL
COMM DIFF
---------- ---------- ---------- --------MARTIN
1250
1400
-150.00
ALLEN
1600
300 +1,300.00
TURNER
1500
0 +1,500.00
WARD
1250
500
+750.00
SQL> cl scr
SQL> SELECT
2 'The Hexadecimal Value of Decimal '||&GVal1||' is '||
3 TO_CHAR(&GVal2, 'X') "Deci 2 Hexa"
4 FROM DUAL;
Enter value for gval1: 10
Enter value for gval2: 10
Deci 2 Hexa
----------------------------------------The Hexadecimal Value of Decimal 10 is A
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Hexadecimal Value of Decimal '||&GVal1||' is '||
3 TO_CHAR(&GVal2, 'x') "Deci 2 Hexa"
4* FROM DUAL
SQL> /
Enter value for gval1: 10
Enter value for gval2: 10
Deci 2 Hexa
----------------------------------------The Hexadecimal Value of Decimal 10 is a
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Hexadecimal Value of Decimal '||&GVal1||' is '||
3 TO_CHAR(&GVal2, 'X') "Deci 2 Hexa"
4* FROM DUAL
SQL> /
Enter value for gval1: 25
Enter value for gval2: 25
Deci 2 Hexa
----------------------------------------The Hexadecimal Value of Decimal 25 is ##
SQL> ED
Wrote file afiedt.buf
1
SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4*
SQL>
SELECT Ename,
TO_CHAR(Sal, '0999') Sal,
TO_CHAR(Comm, '0999') Comm
FROM Emp
/
ENAME
SAL
COMM
---------- ----- ----KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250 1400
ALLEN
1600 0300
TURNER
1500 0000
JAMES
0950
WARD
1250 0500
FORD
3000
SMITH
0800
ENAME
SAL
COMM
---------- ----- ----SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT Ename,
TO_CHAR(Sal, '0G999D99') Sal,
TO_CHAR(Comm, '0G999D99') Comm
FROM Emp
/
ENAME
SAL
COMM
---------- --------- --------KING
5,000.00
BLAKE
2,850.00
CLARK
2,450.00
JONES
2,975.00
MARTIN
1,250.00 1,400.00
ALLEN
1,600.00 0,300.00
TURNER
1,500.00 0,000.00
JAMES
0,950.00
WARD
1,250.00 0,500.00
FORD
3,000.00
SMITH
0,800.00
ENAME
SAL
COMM
---------- --------- --------SCOTT
3,000.00
ADAMS
1,100.00
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MILLER
1,300.00
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
TO_CHAR(Sal, '0G999D99') Sal,
TO_CHAR(NVL(Comm, 0), '0G999D99') Comm,
TO_CHAR(Sal + NVL(Comm, 0), '0G999D99') TotSal
FROM Emp
/
ENAME
SAL
COMM
TOTSAL
---------- --------- --------- --------KING
5,000.00 0,000.00 5,000.00
BLAKE
2,850.00 0,000.00 2,850.00
CLARK
2,450.00 0,000.00 2,450.00
JONES
2,975.00 0,000.00 2,975.00
MARTIN
1,250.00 1,400.00 2,650.00
ALLEN
1,600.00 0,300.00 1,900.00
TURNER
1,500.00 0,000.00 1,500.00
JAMES
0,950.00 0,000.00 0,950.00
WARD
1,250.00 0,500.00 1,750.00
FORD
3,000.00 0,000.00 3,000.00
SMITH
0,800.00 0,000.00 0,800.00
ENAME
SAL
COMM
TOTSAL
---------- --------- --------- --------SCOTT
3,000.00 0,000.00 3,000.00
ADAMS
1,100.00 0,000.00 1,100.00
MILLER
1,300.00 0,000.00 1,300.00
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
TO_CHAR(Sal, '0G000D00') Sal,
TO_CHAR(NVL(Comm, 0), '0G999D99') Comm,
TO_CHAR(Sal + NVL(Comm, 0), '0G999D99') TotSal
FROM Emp
/
ENAME
SAL
COMM
TOTSAL
---------- --------- --------- --------KING
5,000.00 0,000.00 5,000.00
BLAKE
2,850.00 0,000.00 2,850.00
CLARK
2,450.00 0,000.00 2,450.00
JONES
2,975.00 0,000.00 2,975.00
MARTIN
1,250.00 1,400.00 2,650.00
ALLEN
1,600.00 0,300.00 1,900.00
TURNER
1,500.00 0,000.00 1,500.00
JAMES
0,950.00 0,000.00 0,950.00
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
WARD
FORD
SMITH
1,250.00
3,000.00
0,800.00
0,500.00
0,000.00
0,000.00
1,750.00
3,000.00
0,800.00
ENAME
SAL
COMM
TOTSAL
---------- --------- --------- --------SCOTT
3,000.00 0,000.00 3,000.00
ADAMS
1,100.00 0,000.00 1,100.00
MILLER
1,300.00 0,000.00 1,300.00
14 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
TO_CHAR(Sal, '0G999D99C') Sal,
TO_CHAR(NVL(Comm, 0), '0G999D99C') Comm,
TO_CHAR(Sal + NVL(Comm, 0), '0G999D99C') TotSal
FROM Emp
/
ENAME
SAL
COMM
TOTSAL
---------- ---------------- ---------------- ---------------KING
5,000.00USD
0,000.00USD
5,000.00USD
BLAKE
2,850.00USD
0,000.00USD
2,850.00USD
CLARK
2,450.00USD
0,000.00USD
2,450.00USD
JONES
2,975.00USD
0,000.00USD
2,975.00USD
MARTIN
1,250.00USD
1,400.00USD
2,650.00USD
ALLEN
1,600.00USD
0,300.00USD
1,900.00USD
TURNER
1,500.00USD
0,000.00USD
1,500.00USD
JAMES
0,950.00USD
0,000.00USD
0,950.00USD
WARD
1,250.00USD
0,500.00USD
1,750.00USD
FORD
3,000.00USD
0,000.00USD
3,000.00USD
SMITH
0,800.00USD
0,000.00USD
0,800.00USD
ENAME
SAL
COMM
TOTSAL
---------- ---------------- ---------------- ---------------SCOTT
3,000.00USD
0,000.00USD
3,000.00USD
ADAMS
1,100.00USD
0,000.00USD
1,100.00USD
MILLER
1,300.00USD
0,000.00USD
1,300.00USD
14 rows selected.
SQL> cl scr
SQL> SELECT
2 'Today is : '||SYSDATE||TO_CHAR(SYSDATE, 'B.C.') Today
3 FROM DUAL;
TODAY
-----------------------Today is : 09-JUL-10A.D.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SELECT
'Today is : '||SYSDATE||TO_CHAR(SYSDATE, ' B.C.') Today
FROM DUAL
/
TODAY
------------------------Today is : 09-JUL-10 A.D.
SQL> SELECT Ename, Sal, HireDate||TO_CHAR(HireDate, ' B.C.') HireDate
2 FROM Emp;
ENAME
SAL HIREDATE
---------- ---------- -------------KING
5000 17-NOV-81 A.D.
BLAKE
2850 01-MAY-81 A.D.
CLARK
2450 09-JUN-81 A.D.
JONES
2975 02-APR-81 A.D.
MARTIN
1250 28-SEP-81 A.D.
ALLEN
1600 20-FEB-81 A.D.
TURNER
1500 08-SEP-81 A.D.
JAMES
950 03-DEC-81 A.D.
WARD
1250 22-FEB-81 A.D.
FORD
3000 03-DEC-81 A.D.
SMITH
800 17-DEC-80 A.D.
ENAME
SAL HIREDATE
---------- ---------- -------------SCOTT
3000 09-DEC-82 A.D.
ADAMS
1100 12-JAN-83 A.D.
MILLER
1300 23-JAN-82 A.D.
14 rows selected.
SQL> cl cr
SP2-0158: unknown CLEAR option "cr"
SQL> cl scr
SQL>
2
3
4
SELECT
'The Meridian in My Clock is : '||
TO_CHAR(SYSDATE, 'P.M.') Meridian
FROM DUAL;
MERIDIAN
---------------------------------The Meridian in My Clock is : A.M.
SQL> cl scr
SQL>
2
3
4
SELECT
'The Current Date is '||
SYSDATE||' '||TO_CHAR(SYSDATE, 'CC, B.C.') Calendar
FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CALENDAR
-------------------------------------The Current Date is 09-JUL-10 21, A.D.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current Date is '||
SYSDATE||' '||TO_CHAR(SYSDATE, 'SCC, B.C.') Calendar
FROM DUAL
/
CALENDAR
--------------------------------------The Current Date is 09-JUL-10 21, A.D.
SQL> cl scr
SQL>
2
3
4
SELECT
Ename,
HireDate||' '||TO_CHAR(HireDate, 'CC, B.C.') HireDate
FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
HIREDATE
-----------------17-NOV-81 20, A.D.
01-MAY-81 20, A.D.
09-JUN-81 20, A.D.
02-APR-81 20, A.D.
28-SEP-81 20, A.D.
20-FEB-81 20, A.D.
08-SEP-81 20, A.D.
03-DEC-81 20, A.D.
22-FEB-81 20, A.D.
03-DEC-81 20, A.D.
17-DEC-80 20, A.D.
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
-----------------09-DEC-82 20, A.D.
12-JAN-83 20, A.D.
23-JAN-82 20, A.D.
14 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
'The Weekday Number of Today : '||
TO_CHAR(SYSDATE, 'D') WeekDay
FROM DUAL;
WEEKDAY
------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
Ename||' You Joined on The Weekday of '||
TO_CHAR(HireDate, 'D') WeekDay
FROM Emp;
WEEKDAY
----------------------------------------KING You Joined on The Weekday of 3
BLAKE You Joined on The Weekday of 6
CLARK You Joined on The Weekday of 3
JONES You Joined on The Weekday of 5
MARTIN You Joined on The Weekday of 2
ALLEN You Joined on The Weekday of 6
TURNER You Joined on The Weekday of 3
JAMES You Joined on The Weekday of 5
WARD You Joined on The Weekday of 1
FORD You Joined on The Weekday of 5
SMITH You Joined on The Weekday of 4
WEEKDAY
----------------------------------------SCOTT You Joined on The Weekday of 5
ADAMS You Joined on The Weekday of 4
MILLER You Joined on The Weekday of 7
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Ename||' You Joined on The Weekday of '||
3 TO_CHAR(HireDate, 'D') WeekDay
4 FROM Emp
5* WHERE TO_CHAR(HireDate, 'D') = &GWeekday
SQL> /
Enter value for gweekday: 1
WEEKDAY
----------------------------------------WARD You Joined on The Weekday of 1
SQL> /
Enter value for gweekday: 7
WEEKDAY
----------------------------------------MILLER You Joined on The Weekday of 7
SQL> /
Enter value for gweekday: 3
WEEKDAY
----------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
'Today is '||SYSDATE||TO_CHAR(SYSDATE, ' Day') Today
FROM DUAL
/
TODAY
---------------------------Today is 09-JUL-10 Friday
SQL> cl scr
SQL>
2
3
4
SELECT
Ename||' You Are Recruited on '||HireDate||
TO_CHAR(HireDate, ' Day') Hiredate
FROM Emp;
HIREDATE
--------------------------------------------------KING You Are Recruited on 17-NOV-81 Tuesday
BLAKE You Are Recruited on 01-MAY-81 Friday
CLARK You Are Recruited on 09-JUN-81 Tuesday
JONES You Are Recruited on 02-APR-81 Thursday
MARTIN You Are Recruited on 28-SEP-81 Monday
ALLEN You Are Recruited on 20-FEB-81 Friday
TURNER You Are Recruited on 08-SEP-81 Tuesday
JAMES You Are Recruited on 03-DEC-81 Thursday
WARD You Are Recruited on 22-FEB-81 Sunday
FORD You Are Recruited on 03-DEC-81 Thursday
SMITH You Are Recruited on 17-DEC-80 Wednesday
HIREDATE
--------------------------------------------------SCOTT You Are Recruited on 09-DEC-82 Thursday
ADAMS You Are Recruited on 12-JAN-83 Wednesday
MILLER You Are Recruited on 23-JAN-82 Saturday
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
Ename||' You Are Recruited on '||HireDate||
TO_CHAR(HireDate, ' Day') Hiredate
FROM Emp
WHERE TO_CHAR(HireDate, ' Day') = 'Friday'
/
no rows selected
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
Ename||' You Are Recruited on '||HireDate||
TO_CHAR(HireDate, ' Day') Hiredate
FROM Emp
WHERE RTRIM(TO_CHAR(HireDate, 'Day')) = 'Friday'
/
HIREDATE
--------------------------------------------------BLAKE You Are Recruited on 01-MAY-81 Friday
ALLEN You Are Recruited on 20-FEB-81 Friday
SQL>
2
3
4
SELECT
'We Are on the Day '||TO_CHAR(SYSDATE, 'DD')||
' of This Month.' MonthDay
FROM DUAL;
MONTHDAY
----------------------------------We Are on the Day 09 of This Month.
SQL> SELECT Ename, HireDate, Sal
2 FROM Emp
3 WHERE TO_CHAR(HireDate, 'DD') = 3;
ENAME
---------JAMES
FORD
HIREDATE
SAL
--------- ---------03-DEC-81
950
03-DEC-81
3000
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current day Running in This Year : '||
TO_CHAR(SYSDATE, 'DDD') Yearday
FROM DUAL
/
YEARDAY
-----------------------------------------The Current day Running in This Year : 190
SQL>
2
3
4
ENAME
SAL HIREDATE
---------- ---------- --------KING
5000 17-NOV-81
MARTIN
1250 28-SEP-81
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TURNER
JAMES
FORD
SMITH
SCOTT
1500
950
3000
800
3000
08-SEP-81
03-DEC-81
03-DEC-81
17-DEC-80
09-DEC-82
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
SAL HIREDATE
---------- ---------- --------MARTIN
1250 28-SEP-81
TURNER
1500 08-SEP-81
SQL> cl scr
SQL> SELECT
2 'Today is : '||TO_CHAr(SYSDATE, 'DY') Today
3 FROM DUAL;
TODAY
-------------Today is : FRI
SQL> cl scr
SQL>
2
3
4
SELECT
'The Current Week of This Year is : '
||TO_CHAR(SYSDATE, 'IW') YearWeek
FROM DUAL;
YEARWEEK
------------------------------------The Current Week of This Year is : 27
SQL> cl scr
SQL>
2
3
4
SELECT
Ename, Sal, HireDate, TO_CHAR(HireDate, 'IW') YearWeek
FROM Emp
WHERE TO_CHAR(HireDate, 'IW') > 25;
ENAME
SAL HIREDATE YE
---------- ---------- --------- -KING
5000 17-NOV-81 47
MARTIN
1250 28-SEP-81 40
TURNER
1500 08-SEP-81 37
JAMES
950 03-DEC-81 49
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
SMITH
SCOTT
3000 03-DEC-81 49
800 17-DEC-80 51
3000 09-DEC-82 49
7 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT
2 'The Current Year is : '||TO_CHAR(SYSDATE, 'IYYY, B.C.') ThisYear
3 FROM DUAL;
THISYEAR
-------------------------------The Current Year is : 2010, A.D.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Current Year is : '||TO_CHAR(SYSDATE, 'IYYY, B.C. "Century : "CC')
ThisYear
3* FROM DUAL
SQL> /
THISYEAR
--------------------------------------------The Current Year is : 2010, A.D. Century : 21
SQL> SELECT
2 Ename||'''s Recruited Year is '||TO_CHAR(HireDate, 'IYYY, B.C.') EmpHire
3 FROM Emp;
EMPHIRE
----------------------------------------KING's Recruited Year is 1981, A.D.
BLAKE's Recruited Year is 1981, A.D.
CLARK's Recruited Year is 1981, A.D.
JONES's Recruited Year is 1981, A.D.
MARTIN's Recruited Year is 1981, A.D.
ALLEN's Recruited Year is 1981, A.D.
TURNER's Recruited Year is 1981, A.D.
JAMES's Recruited Year is 1981, A.D.
WARD's Recruited Year is 1981, A.D.
FORD's Recruited Year is 1981, A.D.
SMITH's Recruited Year is 1980, A.D.
EMPHIRE
----------------------------------------SCOTT's Recruited Year is 1982, A.D.
ADAMS's Recruited Year is 1983, A.D.
MILLER's Recruited Year is 1982, A.D.
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
Ename||'''s Recruited Year is '||
TO_CHAR(HireDate, 'YYYY "=>" Year, B.C.') EmpHire
FROM Emp
/
EMPHIRE
-------------------------------------------------------------------------------KING's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
BLAKE's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
CLARK's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
JONES's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
MARTIN's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
ALLEN's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
TURNER's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
JAMES's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
WARD's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
FORD's Recruited Year is 1981 => Nineteen Eighty-One, A.D.
SMITH's Recruited Year is 1980 => Nineteen Eighty, A.D.
EMPHIRE
-------------------------------------------------------------------------------SCOTT's Recruited Year is 1982 => Nineteen Eighty-Two, A.D.
ADAMS's Recruited Year is 1983 => Nineteen Eighty-Three, A.D.
MILLER's Recruited Year is 1982 => Nineteen Eighty-Two, A.D.
14 rows selected.
SQL>
2
3
4
SELECT
'The Current Year is : '||
TO_CHAR(SYSDATE, 'YYYY "=>" Year, B.C.') Year
FROM DUAl;
YEAR
-----------------------------------------------------------------------------The Current Year is : 2010 => Twenty Ten, A.D.
SQL> cl scr
SQL>
2
3
4
SELECT
'The Current Week in This Month is : '||
TO_CHAR(SYSDATE, 'W') MonthWeek
FROM DUAl;
MONTHWEEK
------------------------------------The Current Week in This Month is : 2
SQL> SELECT
2 Ename, Sal, HireDate, Job
3 FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL HIREDATE JOB
---------- ---------- --------- --------KING
5000 17-NOV-81 PRESIDENT
ALLEN
1600 20-FEB-81 SALESMAN
SMITH
800 17-DEC-80 CLERK
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename, Sal, HireDate, Job
FROM Emp
WHERE
TO_CHAR(HireDate, 'YYYY') = 1981 AND
TO_CHAR(HireDate, 'W') = 3
/
ENAME
SAL HIREDATE JOB
---------- ---------- --------- --------KING
5000 17-NOV-81 PRESIDENT
ALLEN
1600 20-FEB-81 SALESMAN
SQL> cl scr
SQL>
2
3
4
SELECT
'The Current Quarter of This Year : '||
TO_CHAR(SYSDATE, 'Q') MyDate
FROM DUAL;
MYDATE
-----------------------------------The Current Quarter of This Year : 3
SQL>
2
3
4
5
SELECT
Ename, HireDate, Deptno, Job, Sal
FROM Emp
WHERE
TO_CHAR(HireDate, 'YYYY') = 1981;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
HIREDATE
DEPTNO JOB
SAL
--------- ---------- --------- ---------17-NOV-81
10 PRESIDENT
5000
01-MAY-81
30 MANAGER
2850
09-JUN-81
10 MANAGER
2450
02-APR-81
20 MANAGER
2975
28-SEP-81
30 SALESMAN
1250
20-FEB-81
30 SALESMAN
1600
08-SEP-81
30 SALESMAN
1500
03-DEC-81
30 CLERK
950
22-FEB-81
30 SALESMAN
1250
03-DEC-81
20 ANALYST
3000
10 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename, HireDate, Deptno, Job, Sal
FROM Emp
WHERE
TO_CHAR(HireDate, 'YYYY') = 1981 AND
TO_CHAR(hireDate, 'Q') = 3
/
ENAME
---------MARTIN
TURNER
HIREDATE
DEPTNO JOB
SAL
--------- ---------- --------- ---------28-SEP-81
30 SALESMAN
1250
08-SEP-81
30 SALESMAN
1500
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
Ename, HireDate, Deptno, Job, Sal
FROM Emp
WHERE
TO_CHAR(HireDate, 'YYYY') = 1981 AND
TO_CHAR(HireDate, 'Q') = 3 AND
TO_CHAR(HireDate, 'W') = 4
/
ENAME
HIREDATE
DEPTNO JOB
SAL
---------- --------- ---------- --------- ---------MARTIN
28-SEP-81
30 SALESMAN
1250
SQL> cl scr
SQL> SELECT
2 'The Number of Days Completed '||CHR(10)||
3 'Since January 1ST 4712 B.C To '||CHR(10)||
4 'July 12TH 2010 A.C. Are : '||(TO_CHAR(SYSDATE, J') - 1) "Julian Days"
5 FROm DUAL;
ERROR:
ORA-01756: quoted string not properly terminated
SQL> Ed
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'The Number of Days Completed '||CHR(10)||
'Since January 1ST 4712 B.C To '||CHR(10)||
'July 12TH 2010 A.C. Are : '||(TO_CHAR(SYSDATE,
FROm DUAL
/
Julian Days
-------------------------------------------------------------------------------The Number of Days Completed
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Number of Days Completed '||CHR(10)||
3 'Since January 1ST 4712 B.C To '||CHR(10)||
4 'July 12TH 2010 A.D. Are : '||(TO_CHAR(SYSDATE,
"Julian Days"
5* FROm DUAL
SQL> /
Julian Days
-------------------------------------------------------------------------------The Number of Days Completed
Since January 1ST 4712 B.C To
July 12TH 2010 A.D. Are : 2455389 Days.
SELECT
'The Different Days Are : '||
TO_CHAR(SYSDATE, 'J, DDD, DD, D') Days
FROM DUAL;
DAYS
-------------------------------------------The Different Days Are : 2455390, 193, 12, 2
SQL> cl scr
SQL> SELECT 'The Current Month is '||TO_CHAR(SYSDATE, 'MM') Month
2 FROM DUAL;
MONTH
----------------------The Current Month is 07
SQL>
2
3
4
ENAME
HIREDATE
SAL JOB
---------- --------- ---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MARTIN
TURNER
28-SEP-81
08-SEP-81
1250 SALESMAN
1500 SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
---------MARTIN
TURNER
Sal, Job
HIREDATE
SAL JOB
---------- ---------- --------28-09-1981
1250 SALESMAN
08-09-1981
1500 SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
---------MARTIN
TURNER
Sal, Job
HIREDATE
SAL JOB
-------------------------- ---------- --------Monday
, 28-09-1981 A.D.
1250 SALESMAN
Tuesday , 08-09-1981 A.D.
1500 SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
TO_CHAR(HireDate, 'Day, DD-MM, Year B.C.') HireDate
FROM Emp
WHERE TO_CHAR(HireDate, 'YYYY') = 1981 AND
TO_CHAR(HireDate, 'MM') = 9
/
ENAME
---------MARTIN
TURNER
HIREDATE
----------------------------------------------------------------Monday
, 28-09, Nineteen Eighty-One A.D.
Tuesday , 08-09, Nineteen Eighty-One A.D.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
TO_CHAR(HireDate, 'Day, DD, Month, Year B.C.') HireDate
FROM Emp
WHERE TO_CHAR(HireDate, 'YYYY') = 1981 AND
TO_CHAR(HireDate, 'MM') = 9
/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------HIREDATE
------------------------------------------------------------------------MARTIN
Monday
, 28, September, Nineteen Eighty-One A.D.
TURNER
Tuesday
SQL> ED
Wrote file afiedt.buf
1
2
3*
4
SELECT Ename,
TO_CHAR(HireDate, 'Day, DD, Month, Year B.C.') HireDate
FROM Emp
/
ENAME
---------HIREDATE
------------------------------------------------------------------------KING
Tuesday , 17, November , Nineteen Eighty-One A.D.
BLAKE
Friday
, 01, May
CLARK
Tuesday
, 09, June
ENAME
---------HIREDATE
------------------------------------------------------------------------JONES
Thursday , 02, April
, Nineteen Eighty-One A.D.
MARTIN
Monday
ALLEN
Friday
ENAME
---------HIREDATE
------------------------------------------------------------------------TURNER
Tuesday , 08, September, Nineteen Eighty-One A.D.
JAMES
Thursday , 03, December , Nineteen Eighty-One A.D.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
WARD
Sunday
ENAME
---------HIREDATE
------------------------------------------------------------------------FORD
Thursday , 03, December , Nineteen Eighty-One A.D.
SMITH
Wednesday, 17, December , Nineteen Eighty A.D.
SCOTT
Thursday , 09, December , Nineteen Eighty-Two A.D.
ENAME
---------HIREDATE
------------------------------------------------------------------------ADAMS
Wednesday, 12, January , Nineteen Eighty-Three A.D.
MILLER
Saturday , 23, January
14 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
'The Current Hour in My Server is : '||
TO_CHAR(SYSDATE, 'HH') Hour
FROM DUAL;
HOUR
------------------------------------The Current Hour in My Server is : 11
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current Hour in My Server is : '||
TO_CHAR(SYSDATE, 'HH, P.M.') Hour
FROM DUAL
/
HOUR
------------------------------------------The Current Hour in My Server is : 11, A.M.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current Time in My Server is : '||
TO_CHAR(SYSDATE, 'HH:MI:SS P.M.') MyTime
FROM DUAL
/
MYTIME
-----------------------------------------------The Current Time in My Server is : 11:44:25 A.M.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current Time in My Server is : '||
TO_CHAR(SYSDATE, 'HH" Hours" MI" Minutes" SS" Seconds" P.M.') MyTime
FROM DUAL
/
MYTIME
---------------------------------------------------------------------The Current Time in My Server is : 11 Hours 45 Minutes 23 Seconds A.M.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Current Calender : '||
3 TO_CHAR(SYSDATE, 'Day, DD, Month, Year B.C., HH" Hours" MI" Minutes" SS"
Seconds" P.M.') MyCalender
4* FROM DUAL
SQL> /
TO_CHAR(SYSDATE, 'Day, DD, Month, Year B.C., HH" Hours" MI" Minutes" SS"
Seconds" P.M.') MyCalender
*
ERROR at line 3:
ORA-01801: date format is too long for internal buffer
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Current Calender : '||
3 TO_CHAR(SYSDATE, 'Day, DD, Month, Year B.C.')||
4 TO_CHAR(SYSDATE, ", HH" Hours" MI" Minutes" SS" Seconds" P.M.') MyCalender
5* FROM DUAL
SQL> /
ERROR:
ORA-01740: missing double quote in identifier
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
'The Current Calender : '||
TO_CHAR(SYSDATE, 'Day, DD, Month, Year B.C.')||
TO_CHAR(SYSDATE, ', HH" Hours" MI" Minutes" SS" Seconds" P.M.') MyCalender
FROM DUAL
/
MYCALENDER
-------------------------------------------------------------------------------The Current Calender : Monday
, 12, July
, Twenty Ten A.D., 11 Hours 48 Mi
nutes 03 Seconds A.M.
SQL> cl scr
SQL> SELECT
2 SYSDATE, TO_CHAR(SYSDATE, 'DD-RM-YYYY') Today
3 FROM DUAL;
SYSDATE
TODAY
--------- -----------12-JUL-10 12-VII -2010
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SELECT
SYSDATE, TO_CHAR(SYSDATE, 'DD-rm-YYYY') Today
FROM DUAL
/
SYSDATE
TODAY
--------- -----------12-JUL-10 12-vii -2010
SQL> cl scr
SQL>
2
3
4
SELECT
'The Seconds Since 12.00 A.M. : '||
TO_CHAR(SYSDATE, 'SSSSS') Seconds
FROM DUAL;
SECONDS
-----------------------------------The Seconds Since 12.00 A.M. : 42702
SQL> /
SECONDS
-----------------------------------The Seconds Since 12.00 A.M. : 42710
SQL> /
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SECONDS
-----------------------------------The Seconds Since 12.00 A.M. : 42713
SQL> /
SECONDS
-----------------------------------The Seconds Since 12.00 A.M. : 42716
SQL> cl scr
SQL>
2
3
4
SELECT
'The Current Date is : '||
TO_CHAR(SYSDATE, 'DDTH, Month Year B.C.') MyDate
FROM DUAL;
MYDATE
-------------------------------------------------------------------------------The Current Date is : 12TH, July
Twenty Ten A.D.
SQL> /
MYDATE
-------------------------------------------------------------------------------The Current Date is : 01ST, July
Twenty Ten A.D.
SQL> /
MYDATE
-------------------------------------------------------------------------------The Current Date is : 02ND, July
Twenty Ten A.D.
SQL> /
MYDATE
-------------------------------------------------------------------------------The Current Date is : 03RD, July
Twenty Ten A.D.
SQL> /
MYDATE
-------------------------------------------------------------------------------The Current Date is : 12TH, July
Twenty Ten A.D.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current Date is : '||
TO_CHAR(SYSDATE, 'DDSP, Month Year B.C.') MyDate
FROM DUAL
/
MYDATE
-------------------------------------------------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'The Current Date is : '||
TO_CHAR(SYSDATE, 'DDSPTH, Month Year B.C.') MyDate
FROM DUAL
/
MYDATE
-------------------------------------------------------------------------------The Current Date is : TWELFTH, July
Twenty Ten A.D.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'The Current Date is : '||
3 TO_CHAR(SYSDATE, '"Day "DDSPTH "of" MMSPTH" Month" " Year "YYYYSP B.C.')
MyDate
4* FROM DUAL
SQL> /
MYDATE
-------------------------------------------------------------------------------The Current Date is : Day TWELFTH of SEVENTH Month Year TWO THOUSAND TEN A.D.
SQL> cl scr
SQL> SELECT
2 Ename||
3 ' You Are Hired on : '||
4 TO_CHAR(HireDate, 'Day, "Day "DDSPTH "of" Month "Month" "in The Year"
YYYYSP B.C.') EmpHire
5 FROM Emp;
EMPHIRE
-------------------------------------------------------------------------------KING You Are Hired on : Tuesday , Day SEVENTEENTH of November Month in The Yea
r ONE THOUSAND NINE HUNDRED EIGHTY-ONE A.D.
BLAKE You Are Hired on : Friday
, Day FIRST of May
THOUSAND NINE HUNDRED EIGHTY-ONE A.D.
EMPHIRE
-------------------------------------------------------------------------------MARTIN You Are Hired on : Monday
, Day TWENTY-EIGHTH of September Month in The
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TURNER You Are Hired on : Tuesday , Day EIGHTH of September Month in The Year O
NE THOUSAND NINE HUNDRED EIGHTY-ONE A.D.
JAMES You Are Hired on : Thursday , Day THIRD of December
EMPHIRE
-------------------------------------------------------------------------------THOUSAND NINE HUNDRED EIGHTY-ONE A.D.
WARD You Are Hired on : Sunday
, Day TWENTY-SECOND of February
ear ONE THOUSAND NINE HUNDRED EIGHTY-ONE A.D.
FORD You Are Hired on : Thursday , Day THIRD of December
THOUSAND NINE HUNDRED EIGHTY-ONE A.D.
Month in The Y
Month in The Ye
EMPHIRE
-------------------------------------------------------------------------------SCOTT You Are Hired on : Thursday , Day NINTH of December Month in The Year ONE
THOUSAND NINE HUNDRED EIGHTY-TWO A.D.
ADAMS You Are Hired on : Wednesday, Day TWELFTH of January
NE THOUSAND NINE HUNDRED EIGHTY-THREE A.D.
Month in The
14 rows selected.
SQL> cl scr
SQL>
2
3
4
SELECT
'Today is : '||
TO_CHAR(SYSDATE, 'Day, DD, Month YYYY') MyDate
FROM DUAL;
MYDATE
---------------------------------------Today is : Monday
, 12, July
2010
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SELECT
'Today is : '||
TO_CHAR(SYSDATE, 'FMDay, DD, Month YYYY') MyDate
FROM DUAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
MYDATE
---------------------------------------Today is : Monday, 12, July 2010
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'Today is : '||
TO_CHAR(SYSDATE, 'Day, DD, FMMonth YYYY') MyDate
FROM DUAL
/
MYDATE
---------------------------------------Today is : Monday
, 12, July 2010
SQL> cl scr
SQL> SELECT
2 '1,234.00' Num1,
3 '2,345.00' Num2,
4 '1,234.00' + '2,345.00' Result
5 FROM DUAL;
'1,234.00' + '2,345.00' Result
*
ERROR at line 4:
ORA-01722: invalid number
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
'1,234.00' Num1,
'2,345.00' Num2,
TO_CHAR(1234 + 2345, '9G999D99') Result
FROM DUAL
/
NUM1
NUM2
RESULT
-------- -------- --------1,234.00 2,345.00 3,579.00
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
'1,234.00' Num1,
'2,345.00' Num2,
TO_NUMBER('1,234.00', '9G999D99') +
TO_NUMBER('2,345.00', '9G999D99') Result
FROM DUAL
/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
NUM1
NUM2
RESULT
-------- -------- ---------1,234.00 2,345.00
3579
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
'1,234.00' Num1,
'2,345.00' Num2,
TO_CHAR((TO_NUMBER('1,234.00', '9G999D99') +
TO_NUMBER('2,345.00', '9G999D99')), '9G999D99') Result
FROM DUAL
/
NUM1
NUM2
RESULT
-------- -------- --------1,234.00 2,345.00 3,579.00
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
'1,234.00INR' Num1,
'2,345.00INR' Num2,
TO_NUMBER('1,234.00INR', '9G999D99L', 'NLS_CURRENCY = INR') +
TO_NUMBER('2,345.00INR', '9G999D99L', 'NLS_CURRENCY = INR') Result
FROM DUAL
/
NUM1
NUM2
RESULT
----------- ----------- ---------1,234.00INR 2,345.00INR
3579
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 '1,234.00INR' Num1,
3 '2,345.00INR' Num2,
4 TO_CHAR(
5 (TO_NUMBER('1,234.00INR', '9G999D99L', 'NLS_CURRENCY = INR') +
6 TO_NUMBER('2,345.00INR', '9G999D99L', 'NLS_CURRENCY = INR')), '9G999D99L',
'NLS_CURRENCY = INR') Result
7* FROM DUAL
SQL> /
NUM1
NUM2
RESULT
----------- ----------- ------------------1,234.00INR 2,345.00INR
3,579.00INR
SQL> ED
Wrote file afiedt.buf
1
SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2 '12-JUL-10' Today,
3 '12-JUL-10' + 3 "3 Days"
4* FROM DUAL
SQL> /
'12-JUL-10' + 3 "3 Days"
*
ERROR at line 3:
ORA-01722: invalid number
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'12-JUL-10' Today,
TO_DATE('12-JUL-10', 'DD-MON-YY') + 3 "3 Days"
FROM DUAL
/
TODAY
3 Days
--------- --------12-JUL-10 15-JUL-10
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'Monday, July 12, 2010 A.D.' Today,
3 'Monday, July 12, 2010 A.D.' + 3 "3 Days"
4* FROM DUAL
SQL> /
'Monday, July 12, 2010 A.D.' + 3 "3 Days"
*
ERROR at line 3:
ORA-01722: invalid number
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'Monday, July 12, 2010 A.D.' Today,
3 TO_DATE('Monday, July 12, 2010 A.D.', 'Day, Month DD, YYYY B.C.') + 3 "3
Days"
4* FROM DUAL
SQL> /
TODAY
3 Days
-------------------------- --------Monday, July 12, 2010 A.D. 15-JUL-10
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
'Monday, July 12, 2010 A.D.' Today,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3 TO_CHAR((TO_DATE('Monday, July 12, 2010 A.D.', 'Day, Month DD, YYYY B.C.')
+ 3), 'Day, Month DD, YYYY B.C.') "3 Days"
4* FROM DUAL
SQL> /
TODAY
3 Days
-------------------------- ---------------------------------Monday, July 12, 2010 A.D. Thursday , July
15, 2010 A.D.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'Monday, July 12, 2010 A.D.' Today,
3 TO_CHAR((TO_DATE('Monday, July 12, 2010 A.D.', 'Day, Month DD, YYYY B.C.')
+ 3), 'FMDay, Month DD, YYYY B.C.') "3 Days"
4* FROM DUAL
SQL> /
TODAY
3 Days
-------------------------- ---------------------------Monday, July 12, 2010 A.D. Thursday, July 15, 2010 A.D.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 'Tuesday, July 12, 2010 A.D.' Today,
3 TO_CHAR((TO_DATE('Tuesday, July 12, 2010 A.D.', 'Day, Month DD, YYYY B.C.')
+ 3), 'FMDay, Month DD, YYYY B.C.') "3 Days"
4* FROM DUAL
SQL> /
TO_CHAR((TO_DATE('Tuesday, July 12, 2010 A.D.', 'Day, Month DD, YYYY B.C.') + 3),
'FMDay, Month DD, YYYY B.C.') "3 Days"
*
ERROR at line 3:
ORA-01835: day of week conflicts with Julian date
VALUES('100001', SYSDATE);
1 row created.
SQL> INSERT INTO SampTab
2 VALUES('-100002', SYSDATE);
1 row created.
SQL> INSERT INTO SampTab
2 VALUES('100003.25', SYSDATE);
1 row created.
SQL> INSERT INTO SampTab
2 VALUES('100004-', SYSDATE);
VALUES('100004-', SYSDATE)
*
ERROR at line 2:
ORA-01722: invalid number
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
7 rows selected.
SQL> INSERT INTO SampTab
2 VALUES('1,00,007INR', SYSDATE);
VALUES('1,00,007INR', SYSDATE)
*
ERROR at line 2:
ORA-01722: invalid number
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
9 rows selected.
SQL> INSERT INTO SampTab
2 VALUES(100009, '13-JUL-10');
1 row created.
SQL> INSERT INTO SampTab
2 VALUES(100010, '13-JULY-10');
1 row created.
SQL> INSERT INTO SampTab
2 VALUES(100011, '13-JULY-2010');
1 row created.
SQL> INSERT INTO SampTab
2 VALUES(100012, '13JULY2010');
1 row created.
SQL> INSERT INTO SampTab
2 VALUES(100013, '13072010');
VALUES(100013, '13072010')
*
ERROR at line 2:
ORA-01861: literal does not match format string
SQL> cl scr
SQL> SELECT * FROM SampTab;
SAMPID SAMPDATE
---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
100009
100010
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
SAMPID
---------100011
100012
SAMPDATE
--------13-JUL-10
13-JUL-10
13 rows selected.
SQL> SELECT * FROM SampTab
2 WHERE SampDate = SYSDATE;
no rows selected
SQL> SELECT * FROM SampTab
2 WHERE TO_CHAR(SampDate, 'DD-MON-YY') = TO_CHAR(SYSDATE, 'DD-MON-YY');
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
100009
100010
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
SAMPID
---------100011
100012
SAMPDATE
--------13-JUL-10
13-JUL-10
13 rows selected.
SQL> SELECT * FROM SampTab
2 WHERE SampDate = '13-JUL-10';
SAMPID
---------100009
100010
100011
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
100012 13-JUL-10
SQL> SELECT * FROM SampTab
2 WHERE TO_CHAR(SampDate, 'DD-MON-YY') = '13-JUL-10';
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
100009
100010
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
SAMPID
---------100011
100012
SAMPDATE
--------13-JUL-10
13-JUL-10
13 rows selected.
SQL> cl scr
SQL> SELECT * FROM SampTab;
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
100009
100010
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
SAMPID
---------100011
100012
SAMPDATE
--------13-JUL-10
13-JUL-10
13 rows selected.
SQL> INSERT INTO SampTab
2 VALUES(100013, '13-JUL-2010, 11:59:45 A.M.');
VALUES(100013, '13-JUL-2010, 11:59:45 A.M.')
*
ERROR at line 2:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ORA-01830: date format picture ends before converting entire input string
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO SampTab
2 VALUES(
3
100013,
4* TO_DATE('13-JUL-2010, 11:59:45 A.M.', 'DD-MON-YYYY, HH:MI:SS P.M.'))
SQL> /
1 row created.
SQL> SELECT * FROm SampTab;
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
100009
100010
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
13-JUL-10
SAMPID
---------100011
100012
100013
SAMPDATE
--------13-JUL-10
13-JUL-10
13-JUL-10
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT SampID, TO_CHAR(SampDate, 'DD-FMMonth-YYYY, HH:MI:SS P.M.') SampDate
2* FROM SampTab
SQL> /
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
SAMPDATE
-------------------------------13-July-2010, 11:13:45 A.M.
13-July-2010, 11:14:19 A.M.
13-July-2010, 11:14:46 A.M.
13-July-2010, 11:15:23 A.M.
13-July-2010, 11:17:20 A.M.
13-July-2010, 11:21:5 A.M.
13-July-2010, 11:22:42 A.M.
13-July-2010, 11:25:0 A.M.
13-July-2010, 11:29:15 A.M.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPDATE
-------------------------------13-July-2010, 12:0:0 A.M.
13-July-2010, 12:0:0 A.M.
13-July-2010, 11:59:45 A.M.
14 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO SampTab
2* VALUES(100014, '12:04:45 P.M.')
SQL> /
VALUES(100014, '12:04:45 P.M.')
*
ERROR at line 2:
ORA-01843: not a valid month
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO SampTab
2* VALUES(100014, TO_DATE('12:04:45 P.M.', 'HH:MI:SS A.M.'))
SQL> /
1 row created.
SQL> SELECT
2 SampID, TO_CHAR(SampDate, 'DD-MON-YYYY, HH:MI:SS A.M.') SampDate
3 FROM SampTab;
SAMPID
---------100000
100001
-100002
100003
-100004
100005
-100006
100007
100008
100009
100010
SAMPDATE
-------------------------13-JUL-2010, 11:13:45 A.M.
13-JUL-2010, 11:14:19 A.M.
13-JUL-2010, 11:14:46 A.M.
13-JUL-2010, 11:15:23 A.M.
13-JUL-2010, 11:17:20 A.M.
13-JUL-2010, 11:21:05 A.M.
13-JUL-2010, 11:22:42 A.M.
13-JUL-2010, 11:25:00 A.M.
13-JUL-2010, 11:29:15 A.M.
13-JUL-2010, 12:00:00 A.M.
13-JUL-2010, 12:00:00 A.M.
SAMPID
---------100011
100012
SAMPDATE
-------------------------13-JUL-2010, 12:00:00 A.M.
13-JUL-2010, 12:00:00 A.M.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPDATE
--------------------13-JUL-2010, 21, A.D.
13-JUL-2010, 21, A.D.
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO SampTab
2* VALUES(100002, TO_DATE('13-JUL-2010, B.C.', 'DD-MON-YYYY, A.D.'))
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
1 row created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
SampID,
TO_CHAR(SampDate, 'DD-MON-YYYY, CC, B.C.') SampDate
FROM SampTab
/
SAMPID
---------100000
100001
100002
SAMPDATE
--------------------13-JUL-2010, 21, A.D.
13-JUL-2010, 21, A.D.
13-JUL-2010, 21, B.C.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
SampID,
TO_CHAR(SampDate, 'DD-MON-YYYY, CC, B.C.') SampDate,
TO_CHAR(SampDate, 'J') Julian
FROM SampTab
/
SAMPID
---------100000
100001
100002
SAMPDATE
--------------------13-JUL-2010, 21, A.D.
13-JUL-2010, 21, A.D.
13-JUL-2010, 21, B.C.
JULIAN
------2455391
2455391
0987099
4
5
SAMPID
---------100000
100001
100002
100003
100004
SAMPDATE
--------------------13-JUL-2010, 21, A.D.
13-JUL-2010, 21, A.D.
13-JUL-2010, 21, B.C.
13-JUL-2010, 21, A.D.
13-JUL-2010, 21, B.C.
JULIAN
------2455391
2455391
0987099
2455391
0987099
no rows selected
SQL> DELETE FROM SampTab
2 WHERE SampID = 100000;
1 row deleted.
SQL> DELETE FROM SampTab
2 WHERE SampID = 100001;
1 row deleted.
SQL> DELETE FROM SampTab
2 WHERE SampID = 100002;
1 row deleted.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> SELECT
2 SampID,
3 TO_CHAR(SampDate, 'DD-MON-YYYY, CC, B.C.') SampDate
4 FROM SampTab;
ERROR:
ORA-01801: date format is too long for internal buffer
no rows selected
SQL> DELETE FROM SampTab
2 WHERE SampID = 100003;
1 row deleted.
SQL> DELETE FROM SampTab
2 WHERE SampID = 100004;
1 row deleted.
SQL> SELECT
2 SampID,
3 TO_CHAR(SampDate, 'DD-MON-YYYY, CC, B.C.') SampDate
4 FROM SampTab;
ERROR:
ORA-01801: date format is too long for internal buffer
no rows selected
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM SampTAB;
no rows selected
SQL> INSERT INTO SampTab
2 VALUES(100005, TO_DATE('1', 'J'));
1 row created.
SQL> SELECT SampID, TO_CHAR(SampDate, 'DD-MON-YYYY A.D.') SampDate
2 FROM SampTab;
SAMPID SAMPDATE
---------- ---------------100005 01-JAN-4712 B.C.
SQL> INSERT INTO SampTab
2 VALUES(100005, TO_DATE('5373484', 'J'));
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPDATE
---------------01-JAN-4712 B.C.
31-DEC-9999 A.D.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 SampID,
3 TO_CHAR(SampDate, 'DD-MON-YYYY A.D. ') SampDate,
4 TO_CHAR(SampDate, 'SCC') CurrentCentury
5* FROM SampTab
SQL> /
ERROR:
ORA-01801: date format is too long for internal buffer
no rows selected
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 SampID,
3 TO_CHAR(SampDate, 'SCC') CurrentCentury
4* FROM SampTab
SQL> /
ERROR:
ORA-01801: date format is too long for internal buffer
no rows selected
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> DESC SampTAB;
Name
Null?
----------------------------------------- -------SAMPID
SAMPDATE
Type
---------------------------NUMBER(6)
DATE
EMP_SUM
SUBTOTALS
SAMPTAB
MYAUDIT
TRAPPEDMESSAGES
DEPT
EMP
BONUS
SALGRADE
DUMMY
CUSTOMER
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TNAME
-----------------------------ORD
ITEM
PRODUCT
PRICE
CUMSUM
INSERTDEPT
EMPSALINFO
ORGDESIGNATIONS
DEPTSALSUMMARY
EMPJOBINFO
EMPTOTSALINFO
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
TNAME
-----------------------------EMPLOYEES
EMPMANAGERS
EMPGRADES
EMP_SUMV
EMPDATA
EMPACCOUNTS
EDEPT30
SALES
EMPINFO
EMPLOYEE
TABTYPE CLUSTERID
------- ---------VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
SYNONYM
32 rows selected.
SQL> SELECT * FROM SampTAB;
no rows selected
SQL> cl scr
SQL> INSERT INTO SampTab
2 VALUES(100000, '14-JUL-10');
1 row created.
SQL> INSERT INTO SampTab
2 VALUES(100001, '14-JUL-98');
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPDATE
--------14-JUL-10
14-JUL-98
14-JUL-10
14-JUL-98
SAMPDATE
----------14-JUL-2010
14-JUL-1998
14-JUL-2110
14-JUL-2098
SQL> cl scr
SQL> SELECT Ename, HireDate
2 FROM Emp
3 WHERE Ename = 'SMITH';
ENAME
HIREDATE
---------- --------SMITH
17-DEC-80
SQL>
2
3
4
5
6
7
SELECT
Ename,
Hiredate,
TO_CHAR(ADD_MONTHS(Hiredate, 1),
'DD-MON-YYYY') "NEXT MONTH"
FROM Emp
WHERE Ename = 'SMITH';
ENAME
HIREDATE NEXT MONTH
---------- --------- ----------SMITH
17-DEC-80 17-JAN-1981
SQL>
2
3
4
SELECT
CONCAT(CONCAT(Ename, ' is a '), Job) Designation
FROM Emp
WHERE Empno = 7900;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DESIGNATION
------------------------JAMES is a CLERK
SQL> cl scr
SQL>
2
3
4
5
SELECT
'27-OCT-92' SampDate,
TRUNC(TO_DATE('27-OCT-92' , 'DD-MON-YY'),
'YEAR') "NEW YEAR"
FROM DUAL;
SELECT
'27-OCT-92' SampDate,
ADD_MONTHS('27-OCT-92', -10) "NEW YEAR"
FROM DUAL
/
SELECT
'27-OCT-92' SampDate,
ADD_MONTHS('27-OCT-92', -10) + 5 "NEW YEAR"
FROM DUAL
/
SELECT
'27-OCT-92' SampDate,
ADD_MONTHS('27-OCT-92', -9) "NEW YEAR"
FROM DUAL
/
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'27-OCT-92' SampDate,
ADD_MONTHS('27-OCT-92', -9) - 26 "NEW YEAR"
FROM DUAL
/
SELECT
Ename,
Hiredate,
TO_CHAR(ADD_MONTHS(LAST_DAY(Hiredate) , 5), 'DD-MON-YYYY') "FIVE MONTHS"
FROM Emp
WHERE Ename = 'MARTIN';
ENAME
HIREDATE FIVE MONTHS
---------- --------- ----------MARTIN
28-SEP-81 28-FEB-1982
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename,
Hiredate,
TO_CHAR(ADD_MONTHS(LAST_DAY(Hiredate) , 6), 'DD-MON-YYYY') "FIVE MONTHS"
FROM Emp
WHERE Ename = 'MARTIN'
/
ENAME
HIREDATE FIVE MONTHS
---------- --------- ----------MARTIN
28-SEP-81 31-MAR-1982
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
Ename,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5
6*
SQL>
Hiredate,
TO_CHAR(ADD_MONTHS(Hiredate , 6), 'DD-MON-YYYY') "FIVE MONTHS"
FROM Emp
WHERE Ename = 'MARTIN'
/
ENAME
HIREDATE FIVE MONTHS
---------- --------- ----------MARTIN
28-SEP-81 28-MAR-1982
SQL> cl scr
SQL> SELECT
2 Ename,
3 Hiredate,
4 TO_CHAR(ADD_MONTHS(LAST_DAY(Hiredate) + 1 , 5), 'DD-MON-YYYY') "FIVE
MONTHS"
5 FROM Emp
6 WHERE Ename = 'MARTIN';
ENAME
HIREDATE FIVE MONTHS
---------- --------- ----------MARTIN
28-SEP-81 01-MAR-1982
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
'02-02-1995' Date1,
'01-01-1995' Date2,
MONTHS_BETWEEN(
TO_DATE('02-02-1995' , 'MM-DD-YYYY'),
TO_DATE('01-01-1995', 'MM-DD-YYYY')) MONTHS
FROM Dual;
DATE1
DATE2
MONTHS
---------- ---------- ---------02-02-1995 01-01-1995 1.03225806
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
'02-02-1995' Date1,
'01-01-1995' Date2,
MONTHS_BETWEEN(
TO_DATE('02-02-1995' , 'DD-MM-YYYY'),
TO_DATE('01-01-1995', 'DD-MM-YYYY')) MONTHS
FROM Dual
/
DATE1
DATE2
MONTHS
---------- ---------- ---------02-02-1995 01-01-1995 1.03225806
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
SELECT
'15-MAR-98' Date1,
NEXT_DAY('15-MAR-98', 'TUESDAY') "Next Day"
FROM DUAL;
DATE1
Next Day
--------- --------15-MAR-98 17-MAR-98
SQL> cl scr
SQL>
2
3
4
5
SELECT
Ename,
NVL(TO_CHAR(Comm), 'Not Applicable') "Commission"
FROM Emp
WHERE Deptno = 30;
ENAME
---------BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
Commission
---------------------------------------Not Applicable
1400
300
0
Not Applicable
500
6 rows selected.
SQL> cl scr
SQL>
2
3
4
5
SELECT
'27-OCT-92' MyDate,
ROUND(TO_DATE('27-OCT-92', 'DD-MON-YY'),
'YEAR') "New Year"
FROM DUAL;
MYDATE
New Year
--------- --------27-OCT-92 01-JAN-93
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Ename,
HireDate,
TO_CHAR(HireDate, 'MONTH DD, YYYY')
FROM Emp
WHERE Ename = 'BLAKE';
ENAME
HIREDATE TO_CHAR(HIREDATE,'
---------- --------- -----------------BLAKE
01-MAY-81 MAY
01, 1981
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5
6*
SQL>
SELECT
Ename,
HireDate,
TO_CHAR(HireDate, 'FMMONTH DD, YYYY')
FROM Emp
WHERE Ename = 'BLAKE'
/
ENAME
HIREDATE TO_CHAR(HIREDATE,'
---------- --------- -----------------BLAKE
01-MAY-81 MAY 1, 1981
SQL> cl scr
SQL>
2
3
4
SELECT
'27-OCT-98' Date1,
TO_CHAR(TO_DATE('27-OCT-98', 'DD-MON-RR'), 'YYYY') YEAR
FROM DUAL;
DATE1
YEAR
--------- ---27-OCT-98 1998
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 '27-OCT-98' Date1,
3 TO_CHAR('27-OCT-98', 'DD-MON-RRRR') YEAR
4* FROM DUAL
SQL> /
TO_CHAR('27-OCT-98', 'DD-MON-RRRR') YEAR
*
ERROR at line 3:
ORA-01722: invalid number
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT
'27-OCT-98' Date1,
TO_CHAR(TO_DATE('27-OCT-98', 'DD-MON-YY'), 'DD-MON-RRRR') YEAR
FROM DUAL
/
DATE1
YEAR
--------- ----------27-OCT-98 27-OCT-2098
SQL> ED
Wrote file afiedt.buf
1
2
3
SELECT
'27-OCT-98' Date1,
TO_CHAR(TO_DATE('27-OCT-98', 'DD-MON-RR'), 'DD-MON-RRRR') YEAR
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4* FROM DUAL
SQL> /
DATE1
YEAR
--------- ----------27-OCT-98 27-OCT-1998
SQL> cl scr
SQL> SELECT
2 TO_CHAR(SYSDATE, 'FMDDTH')||' of '||TO_CHAR( SYSDATE, 'Month')||' ,
'||TO_CHAR (SYSDATE, 'YYYY') Idea
3 FROM DUAL;
IDEA
-----------------------14TH of July
, 2010
SQL> cl scr
SQL> SELECT
2 TO_CHAR(SYSDATE, 'FMDAY' )||'''s Special' "MENU"
3 FROM DUAL;
MENU
------------------WEDNESDAY's Special
SQL> cl scr
SQL> SELECT
2 TO_CHAR(TO_DATE('&GiveNumber', 'J'), 'JSP') "Spelled Number"
3 FROM DUAL;
Enter value for givenumber: 1
Spe
--ONE
SQL> /
Enter value for givenumber: 1234
Spelled Number
-----------------------------------ONE THOUSAND TWO HUNDRED THIRTY-FOUR
SQL> /
Enter value for givenumber: 256546
Spelled Number
----------------------------------------------------TWO HUNDRED FIFTY-SIX THOUSAND FIVE HUNDRED FORTY-SIX
SQL> cl scr
SQL> SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
ORGNAME
ENCRYPTEDNAME
--------------------- --------------------SATISH KUMAR YELLANKI (1)9(8 !-#1* ;5@@1$!9
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
'(1)9(8 !-#1* ;5@@1$!9' EncryptName,
TRANSLATE('(1)9(8 !-#1* ;5@@1$!9',
'1234567890!@#$%^&*()-=_+;,.',
'ABCDEFGHIJKLMNOPQRSTUVWXYZ') DecryptedName
FROM DUAL
/
ENCRYPTNAME
DECRYPTEDNAME
--------------------- --------------------(1)9(8 !-#1* ;5@@1$!9 SATISH KUMAR YELLANKI
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> SELECT AVG(Sal) FROM Emp;
AVG(SAL)
---------2073.21429
SQL> ED
Wrote file afiedt.buf
1* SELECT TRUNC(AVG(Sal), 2) AvgSal FROM Emp
SQL> /
AVGSAL
---------2073.21
SQL> SELECT AVG(Sal), AVG(DISTINCT Sal) FROM Emp;
AVG(SAL) AVG(DISTINCTSAL)
---------- ---------------2073.21429
2064.58333
SQL> cl scr
SQL> SELECT Ename, AVG(Sal) FROM Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT AVG(Comm), AVG(Sal)
2 FROM EMp;
AVG(COMM)
AVG(SAL)
---------- ---------550 2073.21429
SQL> ED
Wrote file afiedt.buf
1 SELECT AVG(Comm), AVG(NVL(Comm, 0))
2* FROM EMp
SQL> /
AVG(COMM) AVG(NVL(COMM,0))
---------- ---------------550
157.142857
SQL> cl scr
SQL> SELECT SUM(Sal) FROM Emp;
SUM(SAL)
---------29025
SQL> SELECT SUM(Sal), SUM(Comm) FROM Emp;
SUM(SAL) SUM(COMM)
---------- ---------29025
2200
SQL> SELECT SUM(Sal), AVG(Sal) FROM Emp;
SUM(SAL)
AVG(SAL)
---------- ---------29025 2073.21429
SQL> cl scr
SQL> SELECT SUM(Sal)
2 FROM Emp
3 WHERE Deptno = &GDeptno;
Enter value for gdeptno: 10
SUM(SAL)
---------8750
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 SELECT SUM(Sal), AVG(Sal)
2 FROM Emp
3* WHERE Deptno = &GDeptno
SQL> /
Enter value for gdeptno: 10
SUM(SAL)
AVG(SAL)
---------- ---------8750 2916.66667
SQL> cl scr
SQL> SELECT MAX(Sal), MIN(Sal)
2 FROM Emp;
MAX(SAL)
MIN(SAL)
---------- ---------5000
800
SQL> SELECT Ename, MAX(Sal)
2 FROM Emp;
SELECT Ename, MAX(Sal)
*
ERROR at line 1:
ORA-00937: not a single-group group function
---------14
SQL> SELECT COUNT(Empno) FROM Emp;
COUNT(EMPNO)
-----------14
SQL> SELECT COUNT(MGR) FROM Emp;
COUNT(MGR)
---------13
SQL> SELECT COUNT(Comm) FROM Emp;
COUNT(COMM)
----------4
SQL> cl scr
SQL> SELECT Deptno
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
---------10
20
30
SQL> SELECT DISTINCT Deptno FROM Emp;
DEPTNO
---------10
20
30
SQL> cl scr
SQL> SELECT Job FROM Emp
2 GROUP BY Job;
JOB
--------ANALYST
CLERK
MANAGER
PRESIDENT
SALESMAN
SQL> ed
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 SELECT SUM(Sal)
2* FROM Emp
3 /
SUM(SAL)
---------29025
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, SUM(Sal)
2* FROM Emp
SQL> /
SELECT Deptno, SUM(Sal)
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
SUM(SAL)
---------- ---------10
8750
20
10875
30
9400
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
DEPTNO
SUM(SAL)
---------- ---------20
10875
30
9400
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
SELECT SUM(Sal)
FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3* GROUP BY Deptno
SQL> /
SUM(SAL)
---------8750
10875
9400
SQL> cl scr
SQL> SELECT TO_CHAR(HireDate, 'YYYY') Year
2 FROM Emp;
YEAR
---1981
1981
1981
1981
1981
1981
1981
1981
1981
1981
1980
YEAR
---1982
1983
1982
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
YEAR
---1980
1981
1982
1983
SQL> ED
Wrote file afiedt.buf
1
2
YEAR
--------April
December
February
January
June
May
November
September
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT TO_CHAR(HireDate, 'Month') Year
2 FROM Emp
3 GROUP BY TO_CHAR(HireDate, 'Month')
4* ORDER BY TO_CHAR(HireDate, 'MM')
SQL> /
ORDER BY TO_CHAR(HireDate, 'MM')
*
ERROR at line 4:
ORA-00979: not a GROUP BY expression
---------10
20
30
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno FROM Emp
2* GROUP BY Deptno DESC
SQL> /
GROUP BY Deptno DESC
*
ERROR at line 2:
ORA-00933: SQL command not properly ended
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------30
20
10
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno FROM Emp
2 GROUP BY Deptno
3* ORDER BY Job DESC
SQL> /
ORDER BY Job DESC
*
ERROR at line 3:
ORA-00979: not a GROUP BY expression
SQL> cl scr
SQL> SELECT TO_CHAR(HireDate, 'Month') Month
2 FROM Emp
3 GROUP BY TO_CHAR(HireDate, 'Month');
MONTH
--------April
December
February
January
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
June
May
November
September
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
S.
-01
02
04
05
06
09
11
12
SELECT
TO_CHAR(HireDate,
TO_CHAR(HireDate,
FROM Emp
GROUP BY
TO_CHAR(HireDate,
TO_CHAR(HireDate,
/
'MM') "S.No",
'Month') Month
'MM'),
'Month')
MONTH
--------January
February
April
May
June
September
November
December
8 rows selected.
SQL> cl scr
SQL> SELECT Deptno, Job
2 FROM Emp
3 GROUP BY Deptno;
SELECT Deptno, Job
*
ERROR at line 1:
ORA-00979: not a GROUP BY expression
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------10
10
10
JOB
--------CLERK
MANAGER
PRESIDENT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
20
20
20
30
30
30
CLERK
ANALYST
MANAGER
CLERK
MANAGER
SALESMAN
9 rows selected.
SQL> SELECT DISTINCT Deptno, Job FROM Emp;
DEPTNO
---------10
10
10
20
20
20
30
30
30
JOB
--------CLERK
MANAGER
PRESIDENT
ANALYST
CLERK
MANAGER
CLERK
MANAGER
SALESMAN
9 rows selected.
SQL> SELECT Deptno, AVG(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
AVG(SAL)
---------- ---------10 2916.66667
20
2175
30 1566.66667
SQL> SELECT DISTINCT Deptno, AVG(Sal)
2 FROM Emp;
SELECT DISTINCT Deptno, AVG(Sal)
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL> cl scr
SQL> SELECT Deptno, AVG(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
AVG(SAL)
---------- ---------10 2916.66667
20
2175
30 1566.66667
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DEPTNO
AVG(SAL)
---------- ---------30 1566.66667
20
2175
10 2916.66667
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, AVG(Sal) SalAvg
2 FROM Emp
3 GROUP BY Deptno
4* ORDER BY SalAvg
SQL> ./
SP2-0042: unknown command "./" - rest of line ignored.
SQL> /
DEPTNO
SALAVG
---------- ---------30 1566.66667
20
2175
10 2916.66667
SQL> cl scr
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, Job;
DEPTNO
---------10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> cl scr
SQL> SELECT SUM(Sal) FROM Emp;
SUM(SAL)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
---------29025
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SUM(SAL)
---------- ---------10
8750
20
10875
30
9400
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, Job;
DEPTNO
---------10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
TO_CHAR(HireDate, 'YYYY') Year,
Deptno, Job, SUM(Sal)
FROM Emp
GROUP BY
Deptno,
Job,
TO_CHAR(HireDate, 'YYYY')
/
YEAR
DEPTNO JOB
SUM(SAL)
---- ---------- --------- ---------1982
10 CLERK
1300
1981
10 MANAGER
2450
1981
10 PRESIDENT
5000
1980
20 CLERK
800
1983
20 CLERK
1100
1981
20 ANALYST
3000
1982
20 ANALYST
3000
1981
20 MANAGER
2975
1981
30 CLERK
950
1981
30 MANAGER
2850
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1981
30 SALESMAN
5600
11 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
SELECT
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
Deptno, Job, SUM(Sal)
FROM Emp
GROUP BY
Deptno,
Job,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q')
/
YEAR
---1982
1981
1981
1980
1983
1981
1982
1981
1981
1981
1981
Q
DEPTNO JOB
SUM(SAL)
- ---------- --------- ---------1
10 CLERK
1300
2
10 MANAGER
2450
4
10 PRESIDENT
5000
4
20 CLERK
800
1
20 CLERK
1100
4
20 ANALYST
3000
4
20 ANALYST
3000
2
20 MANAGER
2975
4
30 CLERK
950
2
30 MANAGER
2850
1
30 SALESMAN
2850
YEAR Q
DEPTNO JOB
SUM(SAL)
---- - ---------- --------- ---------1981 3
30 SALESMAN
2750
12 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12*
SQL>
SELECT
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
TO_CHAR(HireDate, 'FMMonth') Month,
Deptno, Job, SUM(Sal)
FROM Emp
GROUP BY
Deptno,
Job,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q'),
TO_CHAR(HireDate, 'FMMonth')
/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
YEAR
---1982
1981
1981
1980
1983
1981
1982
1981
1981
1981
1981
Q
1
2
4
4
1
4
4
2
4
2
1
MONTH
DEPTNO JOB
SUM(SAL)
--------- ---------- --------- ---------January
10 CLERK
1300
June
10 MANAGER
2450
November
10 PRESIDENT
5000
December
20 CLERK
800
January
20 CLERK
1100
December
20 ANALYST
3000
December
20 ANALYST
3000
April
20 MANAGER
2975
December
30 CLERK
950
May
30 MANAGER
2850
February
30 SALESMAN
2850
YEAR Q MONTH
DEPTNO JOB
SUM(SAL)
---- - --------- ---------- --------- ---------1981 3 September
30 SALESMAN
2750
12 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14*
SQL>
SELECT
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
TO_CHAR(HireDate, 'FMMonth') Month,
TO_CHAR(HireDate, 'W') Week,
Deptno, Job, SUM(Sal)
FROM Emp
GROUP BY
Deptno,
Job,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q'),
TO_CHAR(HireDate, 'FMMonth'),
TO_CHAR(HireDate, 'W')
/
YEAR
---1982
1981
1981
1980
1983
1981
1982
1981
1981
1981
1981
Q
1
2
4
4
1
4
4
2
4
2
1
MONTH
--------January
June
November
December
January
December
December
April
December
May
February
W
DEPTNO JOB
SUM(SAL)
- ---------- --------- ---------4
10 CLERK
1300
2
10 MANAGER
2450
3
10 PRESIDENT
5000
3
20 CLERK
800
2
20 CLERK
1100
1
20 ANALYST
3000
2
20 ANALYST
3000
1
20 MANAGER
2975
1
30 CLERK
950
1
30 MANAGER
2850
3
30 SALESMAN
1600
YEAR Q MONTH
W
DEPTNO JOB
SUM(SAL)
---- - --------- - ---------- --------- ---------1981 1 February 4
30 SALESMAN
1250
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1981 3 September 2
1981 3 September 4
30 SALESMAN
30 SALESMAN
1500
1250
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16*
SQL>
SELECT
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
TO_CHAR(HireDate, 'FMMonth') Month,
TO_CHAR(HireDate, 'W') Week,
TO_CHAR(HireDate, 'FMDay') Day,
Deptno, Job, SUM(Sal)
FROM Emp
GROUP BY
Deptno,
Job,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q'),
TO_CHAR(HireDate, 'FMMonth'),
TO_CHAR(HireDate, 'W'),
TO_CHAR(HireDate, 'FMDay')
/
YEAR
---1982
1981
1981
1980
1983
1981
1982
1981
1981
1981
1981
Q
1
2
4
4
1
4
4
2
4
2
1
MONTH
--------January
June
November
December
January
December
December
April
December
May
February
W
4
2
3
3
2
1
2
1
1
1
3
DAY
DEPTNO JOB
SUM(SAL)
--------- ---------- --------- ---------Saturday
10 CLERK
1300
Tuesday
10 MANAGER
2450
Tuesday
10 PRESIDENT
5000
Wednesday
20 CLERK
800
Wednesday
20 CLERK
1100
Thursday
20 ANALYST
3000
Thursday
20 ANALYST
3000
Thursday
20 MANAGER
2975
Thursday
30 CLERK
950
Friday
30 MANAGER
2850
Friday
30 SALESMAN
1600
YEAR
---1981
1981
1981
Q
1
3
3
MONTH
--------February
September
September
W
4
2
4
DAY
DEPTNO JOB
SUM(SAL)
--------- ---------- --------- ---------Sunday
30 SALESMAN
1250
Tuesday
30 SALESMAN
1500
Monday
30 SALESMAN
1250
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Deptno,
AVG(Sal)
FROM Emp
GROUP BY Deptno
HAVING MAX(Sal) > 2900;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DEPTNO
AVG(SAL)
---------- ---------10 2916.66667
20
2175
SQL>
2
3
4
SELECT
Deptno
FROM Emp
/
DEPTNO
---------10
30
10
20
30
30
30
30
30
20
20
DEPTNO
---------20
20
10
14 rows selected.
SQL>
2
3
4
5
SELECT
Deptno
FROM Emp
GROUP BY Deptno
/
DEPTNO
---------10
20
30
SQL>
2
3
4
5
6
SELECT
Deptno,
AVG(Sal)
FROM Emp
GROUP BY Deptno
/
DEPTNO
AVG(SAL)
---------- ---------10 2916.66667
20
2175
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
30 1566.66667
SQL> SELECT Deptno, MAX(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
MAX(SAL)
---------- ---------10
5000
20
3000
30
2850
SQL> SPOOL OFF
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Deptno,
AVG(Sal)
FROM Emp
GROUP BY Deptno
HAVING MAX(Sal) > 2900;
DEPTNO
AVG(SAL)
---------- ---------10 2916.66667
20
2175
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT
Job,
SUM(Sal) Payroll
FROM Emp
WHERE Job NOT LIKE 'SALES%'
GROUP BY Job
HAVING SUM(Sal) > 5000
ORDER BY SUM(Sal);
JOB
PAYROLL
--------- ---------ANALYST
6000
MANAGER
8275
SQL>
2
3
4
SELECT
Job
FROM Emp
/
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
JOB
--------ANALYST
CLERK
CLERK
14 rows selected.
SQL>
2
3
4
5
SELECT
Job
FROM Emp
WHERE Job NOT LIKE 'SALES%'
/
JOB
--------PRESIDENT
MANAGER
MANAGER
MANAGER
CLERK
ANALYST
CLERK
ANALYST
CLERK
CLERK
10 rows selected.
SQL>
2
3
4
5
6
SELECT
Job
FROM Emp
WHERE Job NOT LIKE 'SALES%'
GROUP BY Job
/
JOB
--------ANALYST
CLERK
MANAGER
PRESIDENT
SQL>
2
3
4
5
6
SELECT
Job,
SUM(Sal) Payroll
FROM Emp
WHERE Job NOT LIKE 'SALES%'
GROUP BY Job
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JOB
PAYROLL
--------- ---------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT
Deptno,
MIN(Sal),
MAX(Sal)
FROM Emp
WHERE Job = 'CLERK'
GROUP BY Deptno
HAVING MIN(Sal) < 1000;
DEPTNO
MIN(SAL)
MAX(SAL)
---------- ---------- ---------20
800
1100
30
950
950
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Deptno,
SUM(Sal)
FROM Emp
GROUP BY Deptno
HAVING COUNT(Deptno) > 3;
DEPTNO
SUM(SAL)
---------- ---------20
10875
30
9400
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
Deptno,
AVG(Sal),
SUM(Sal)
FROM Emp
GROUP BY Deptno
HAVING AVG (Sal) > 2500;
DEPTNO
AVG(SAL)
SUM(SAL)
---------- ---------- ---------10 2916.66667
8750
SQL> cl scr
SQL> SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
7
8
Deptno,
Job,
SUM(Sal),
AVG(Sal)
FROM Emp
GROUP BY Deptno, Job
HAVING AVG(Sal) > 2500;
DEPTNO
---------10
20
20
30
JOB
SUM(SAL)
AVG(SAL)
--------- ---------- ---------PRESIDENT
5000
5000
ANALYST
6000
3000
MANAGER
2975
2975
MANAGER
2850
2850
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
Deptno,
Job,
SUM(Sal),
AVG(Sal)
FROM Emp
GROUP BY Deptno, Job
HAVING AVG(Sal) > 2500 AND AVG(Sal) < 3000
/
DEPTNO
---------20
30
JOB
SUM(SAL)
AVG(SAL)
--------- ---------- ---------MANAGER
2975
2975
MANAGER
2850
2850
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
Deptno,
Job,
SUM(Sal),
AVG(Sal)
FROM Emp
GROUP BY Deptno, Job
HAVING AVG(Sal) BETWEEN 2500 AND 3000
/
DEPTNO
---------20
20
30
JOB
SUM(SAL)
AVG(SAL)
--------- ---------- ---------ANALYST
6000
3000
MANAGER
2975
2975
MANAGER
2850
2850
SQL> ED
Wrote file afiedt.buf
1
SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
7
8*
SQL>
Deptno,
Job,
SUM(Sal),
AVG(Sal)
FROM Emp
GROUP BY Deptno, Job
HAVING AVG(Sal) IN(2850, 3000)
/
DEPTNO
---------20
30
JOB
SUM(SAL)
AVG(SAL)
--------- ---------- ---------ANALYST
6000
3000
MANAGER
2850
2850
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
Deptno,
Job,
SUM(Sal),
AVG(Sal)
FROM Emp
GROUP BY Deptno, Job
HAVING AVG(Sal) > 2500 AND SUM(Sal) < 6000
/
DEPTNO
---------10
20
30
JOB
SUM(SAL)
AVG(SAL)
--------- ---------- ---------PRESIDENT
5000
5000
MANAGER
2975
2975
MANAGER
2850
2850
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
Deptno,
Job,
SUM(Sal),
AVG(Sal)
FROM Emp
GROUP BY Deptno, Job
HAVING AVG(Sal) > 2500 AND SUM(Sal) < 6000 AND COUNT(*) > 2
/
no rows selected
SQL> cl scr
SQL> SELECT Deptno, AVG(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
AVG(SAL)
---------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10 2916.66667
20
2175
30 1566.66667
SQL> SELECT MAX(AVG(Sal))
2 FROM Emp
3 GROUP BY Deptno;
MAX(AVG(SAL))
------------2916.66667
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, MAX(AVG(Sal))
2 FROM Emp
3* GROUP BY Deptno
SQL> /
SELECT Deptno, MAX(AVG(Sal))
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL> cl scr
SQL> SELECT SUM(SUM(Sal))
2 FROM Emp
3 GROUP BY Deptno;
SUM(SUM(SAL))
------------29025
SQL> SELECT SUM(Sal) FROM Emp;
SUM(SAL)
---------29025
SQL> cl scr
SQL> SELECT
2 GREATEST('HARRY', 'HARRIOT')
3 FROM DUAL;
GREAT
----HARRY
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
LEAST('HARRY', 'HARRIOT')
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3* FROM DUAL
SQL> /
LEAST('
------HARRIOT
SQL> SELECT
2 GREATEST(1000, 2000, 200)
3 FROM DUAL;
GREATEST(1000,2000,200)
----------------------2000
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SELECT
LEAST(1000, 2000, 200)
FROM DUAL
/
LEAST(1000,2000,200)
-------------------200
SQL> cl scr
SQL> SELECT
2 GREATEST('10-JUL-05', '20-JUL-05')
3 FROM DUAL;
GREATEST(
--------20-JUL-05
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SELECT
LEAST('10-JUL-05', '20-JUL-05')
FROM DUAL
/
LEAST('10
--------10-JUL-05
SQL> cl scr
SQL> SHOW USER
USER is "SCOTT"
SQL> SELECT USER FROM DUAL;
USER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
-----------------------------SCOTT
SQL> cl scr
SQL> SHOW USER
USER is "SCOTT"
SQL> SHOW UID
SP2-0158: unknown SHOW option "UID"
SQL> SELECT USER, UID FROM DUAL;
USER
UID
------------------------------ ---------SCOTT
57
SQL> cl scr
SQL> SELECT USER, USERENV('ISDBA') UserEnv
2 FROM Emp;
USER
-----------------------------SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
USEREN
-----FALSE
FALSE
FALSE
FALSE
FALSE
FALSE
FALSE
FALSE
FALSE
FALSE
FALSE
USER
-----------------------------SCOTT
SCOTT
SCOTT
USEREN
-----FALSE
FALSE
FALSE
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT USER, USERENV('ISDBA') UserEnv
2* FROM DUAL
SQL> /
USER
USEREN
------------------------------ -----SCOTT
FALSE
SQL> cl scr
SQL> SELECT USER, USERENV('LANGUAGE') UserEnv FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
USER
-----------------------------USERENV
---------------------------------------------------SCOTT
AMERICAN_AMERICA.WE8MSWIN1252
SQL> /
Enter value for gvalue: 'SAMPLE'
old
1: SELECT VSIZE(&GValue) MemorySize FROM DUAL
new
1: SELECT VSIZE('SAMPLE') MemorySize FROM DUAL
MEMORYSIZE
---------6
SQL> SET VERIFY OFF
SQL> cl scr
SQL> R
1* SELECT VSIZE(&GValue) MemorySize FROM DUAL
Enter value for gvalue: 'Sample Data For Demo'
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MEMORYSIZE
---------20
SQL> /
Enter value for gvalue: 1
MEMORYSIZE
---------2
SQL> /
Enter value for gvalue: 23
MEMORYSIZE
---------2
SQL> /
Enter value for gvalue: 345
MEMORYSIZE
---------3
SQL> /
Enter value for gvalue: 234.567
MEMORYSIZE
---------5
SQL> /
Enter value for gvalue: 543456.8765676
MEMORYSIZE
---------8
SQL> cl scr
SQL> SELECT
2 Ename||' You Are Occupying '||TO_CHAR(TO_DATE(VSIZE(Ename), 'J'), 'JSP')||'
Bytes of Memory Space.' Ename
3 FROM Emp;
ENAME
-------------------------------------------------------------------------------KING You Are Occupying FOUR Bytes of Memory Space.
BLAKE You Are Occupying FIVE Bytes of Memory Space.
CLARK You Are Occupying FIVE Bytes of Memory Space.
JONES You Are Occupying FIVE Bytes of Memory Space.
MARTIN You Are Occupying SIX Bytes of Memory Space.
ALLEN You Are Occupying FIVE Bytes of Memory Space.
TURNER You Are Occupying SIX Bytes of Memory Space.
JAMES You Are Occupying FIVE Bytes of Memory Space.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
18
FROM Emp;
ENAME
---------BLAKE
CLARK
JONES
ENAME
SAL DEPTNO JOB
---------- ----- ------ --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO JOB
---------- ----- ------ --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3* WHERE Job = 'manger'
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO JOB
---------- ----- ------ --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO JOB
---------- ----- ------ --------JAMES
950
30 CLERK
SMITH
800
20 CLERK
ADAMS
1100
20 CLERK
MILLER
1300
10 CLERK
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3* WHERE SOUNDEX(Ename) = SOUNDEX('smythe')
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
ENAME
SAL DEPTNO JOB
---------- ----- ------ --------SMITH
800
20 CLERK
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO JOB
---------- ----- ------ --------KING
5000
10 PRESIDENT
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO JOB
SOUN SOUN
---------- ----- ------ --------- ---- ---KING
5000
10 PRESIDENT K520 K520
SQL> SPOOL OFF
SQL> cl scr
SQL> CREATE TABLE SampleNN01
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SampleNN01_SampID_NN NOT NULL,
5
SampName VARCHAR2(10)
6
CONSTRAINT SampleNN01_SampName_NN NOT NULL,
7
SampDate DATE
8 );
Table created.
SQL> DESC SampleNN01
Name
----------------------------------------SAMPID
SAMPNAME
SAMPDATE
Null?
-------NOT NULL
NOT NULL
Type
---------------------------NUMBER(2)
VARCHAR2(10)
DATE
7
CONSTRAINT SampleNN02_SampID_NN NOT NULL(SampID)
8* )
SQL> /
CONSTRAINT SampleNN02_SampID_NN NOT NULL(SampID)
*
ERROR at line 7:
ORA-00904: : invalid identifier
SQL> cl scr
SQL> CREATE TABLE SampUNQ01
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SampUNQ01_SampID_UNQ UNIQUE,
5
SampName VARCHAR2(10),
6
SampDate DATE
7 );
Table created.
SQL> INSERT INTO SampUNQ01
2 VALUES(1, 'SAMPLE01', SYSDATE);
1 row created.
SQL> INSERT INTO SampUNQ01
2 VALUES(1, 'SAMPLE02', SYSDATE);
INSERT INTO SampUNQ01
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.SAMPUNQ01_SAMPID_UNQ) violated
7* )
SQL> /
Table created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
Table created.
SQL> INSERT INTO SampUNQ03
2 VALUES(1, 'SAMPLE01', SYSDATE);
1 row created.
SQL> INSERT INTO SampUNQ03
2 VALUES(2, 'SAMPLE01', SYSDATE);
INSERT INTO SampUNQ03
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.SAMPUNQ03_SAMPNAME_UNQ) violated
Table created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
Table created.
SQL> INSERT INTO SampUNQ05
2 VALUES(1, 'SAMPLE01', SYSDATE);
1 row created.
SQL> INSERT INTO SampUNQ05
2 VALUES(1, 'SAMPLE02', SYSDATE);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL> INSERT INTO SampUNQ05
2 VALUES(2, 'SAMPLE02', SYSDATE);
1 row created.
SQL> INSERT INTO SampUNQ05
2 VALUES(NULL, 'SAMPLE03', SYSDATE);
1 row created.
SQL> INSERT INTO SampUNQ05
2 VALUES(NULL, 'SAMPLE04', SYSDATE);
1 row created.
SQL> INSERT INTO SampUNQ05
2 VALUES(NULL, 'SAMPLE04', SYSDATE);
INSERT INTO SampUNQ05
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.SAMPUNQ05_SAMPIDNAME_UNQ) violated
Table created.
SQL> SPOOL OFF
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Type
---------------------------NUMBER(2)
VARCHAR2(10)
DATE
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
Table created.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
Table created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
Table created.
SQL> CREATE TABLE SamplePK05
2 (
3
SampID NUMBER(2),
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
SampName VARCHAR2(10),
5
SampDate DATE,
6
CONSTRAINT SamplePK05_SampIDName_PK
7
PRIMARY KEY(SampID, SammName)
8 );
PRIMARY KEY(SampID, SammName)
*
ERROR at line 7:
ORA-00904: "SAMMNAME": invalid identifier
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
Table created.
SQL> INSERT INTo SamplePK05
2 VALUES(1, 'SAMPLE01', SYSDATE);
1 row created.
SQL> INSERT INTo SamplePK05
2 VALUES(1, 'SAMPLE02', SYSDATE);
1 row created.
SQL> INSERT INTo SamplePK05
2 VALUES(2, 'SAMPLE02', SYSDATE);
1 row created.
SQL> INSERT INTo SamplePK05
2 VALUES(NULL, 'SAMPLE03', SYSDATE);
VALUES(NULL, 'SAMPLE03', SYSDATE)
*
ERROR at line 2:
ORA-01400: cannot insert NULL into ("SCOTT"."SAMPLEPK05"."SAMPID")
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE SamplePK06
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SamplePK06_SampID_UNQ UNIQUE,
5
SampName VARCHAR2(10),
6
SampDate DATE,
7
CONSTRAINT SamplePK06_SampID_PK
8
PRIMARY KEY(SampID)
9* )
SQL> /
CONSTRAINT SamplePK06_SampID_UNQ UNIQUE,
*
ERROR at line 4:
ORA-02261: such unique or primary key already exists in the table
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9*
SQL>
Table created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
Table created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE SamplePK08
2 (
3
SampID NUMBER(2),
4
SampName VARCHAR2(10),
5
SampDate DATE,
6
CONSTRAINT SamplePK08_SampIDName_PK
7
PRIMARY KEY(SampID, SampName),
8
CONSTRAINT SamplePK08_SampIDName_UNQ
9
UNIQUE(SampID, SampName)
10* )
SQL> /
UNIQUE(SampID, SampName)
*
ERROR at line 9:
ORA-02261: such unique or primary key already exists in the table
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
VIEW
VIEW
VIEW
VIEW
TNAME
-----------------------------EMPACCOUNTS
CUMSUM
ORGDESIGNATIONS
DEPT
EMP
BONUS
SALGRADE
DUMMY
CUSTOMER
ORD
ITEM
TABTYPE CLUSTERID
------- ---------VIEW
VIEW
VIEW
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TNAME
TABTYPE CLUSTERID
------------------------------ ------- ---------PRODUCT
TABLE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
PRICE
SALES
TABLE
VIEW
25 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> CREATE TABLE MyDept
2 (
3
Deptno NUMBER(2)
4
CONSTRAINT MyDept_Deptno_PK PRIMARY KEY,
5
Dname VARCHAR2(16)
6
CONSTRAINT MyDept_Dname_NN NOT NULL,
7
Loc VARCHAR2(16)
8
CONSTRAINT MyDept_Loc_NN NOT NULL
9 );
Table created.
SQL> CREATE TABLE MyEmp
2 (
3
Empno NUMBER(4)
4
CONSTRAINT MyEmp_Empno_PK PRIMARY KEY,
5
Ename VARCHAR2(10)
6
CONSTRAINT MyEmp_Ename_NN NOT NULL,
7
Job VARCHAR2(14)
8
CONSTRAINT MyEmp_Job_NN NOT NULL,
9
HireDate DATE
10
CONSTRAINT MyEmp_HireDate_NN NOT NULL,
11
MGR NUMBER(4)
12
CONSTRAINT MyEmp_MGR_FK
13
REFERENCES MyEmp(Empno)
14
ON DELETE SET NULL,
15
Sal NUMBER(7, 2)
16
CONSTRAINT MyEmp_Sal_NN NOT NULL,
17
Comm NUMBER(7, 2),
18
DeptID NUMBER(2)
19
CONSTRAINT MyEmp_DeptID_NN NOT NULL
20
CONSTRAINT MyEmp_DeptID_FK
21
REFERENCES MyDept(Deptno)
22
ON DELETE CASCADE
23 );
Table created.
SQL> DESC Dept
Name
Null?
----------------------------------------- -------DEPTNO
NOT NULL
DNAME
LOC
Type
---------------------------NUMBER(2)
VARCHAR2(14)
VARCHAR2(13)
----------------------------------------DEPTNO
DNAME
LOC
SQL> DESC Emp
Name
----------------------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
SQL> DESC MyEmp
Name
----------------------------------------EMPNO
ENAME
JOB
HIREDATE
MGR
SAL
COMM
DEPTID
-------NOT NULL
NOT NULL
NOT NULL
---------------------------NUMBER(2)
VARCHAR2(16)
VARCHAR2(16)
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
Null?
-------NOT NULL
NOT NULL
NOT NULL
NOT NULL
Type
---------------------------NUMBER(4)
VARCHAR2(10)
VARCHAR2(14)
DATE
NUMBER(4)
NOT NULL NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
Table created.
SQL> INSERT INTO SampleFK01
2 VALUES(20, 'SAMPLE20', SYSDATE, NULL);
1 row created.
SQL> INSERT INTO SamplePK01
2 VALUES(10, 'SAMPLE10', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK01
2 VALUES(11, 'SAMPLE11', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK01
2 VALUES(12, 'SAMPLE12', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK01
2 VALUES(13, 'SAMPLE13', SYSDATE);
1 row created.
SQL> INSERT INTO SampleFK01
2 VALUES(21, 'SAMPLE21', SYSDATE, 10);
1 row created.
SQL> INSERT INTO SampleFK01
2 VALUES(22, 'SAMPLE22', SYSDATE, 15);
INSERT INTO SampleFK01
*
ERROR at line 1:
ORA-02291: integrity constraint (SCOTT.SAMPLEFK01_SAMPIDFK_FK) violated parent key not found
10
11
12
13
SAMPLE10
SAMPLE11
SAMPLE12
SAMPLE13
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
SAMPNAME
---------SAMPLE20
SAMPLE21
SAMPLE22
SAMPLE23
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
23-JUN-10
10
23-JUN-10
10
23-JUN-10
12
11
);
Table created.
SQL> INSERT INTO SamplePK02
2 VALUES(1, 'SAMPLE01', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK02
2 VALUES(2, 'SAMPLE02', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK02
2 VALUES(3, 'SAMPLE03', SYSDATE);
1 row created.
SQL> INSERT INTO SampleFK02
2 VALUES(10, 'SAMPLE10', SYSDATE, 1);
1 row created.
SQL> INSERT INTO SampleFK02
2 VALUES(11, 'SAMPLE11', SYSDATE, 2);
1 row created.
SQL> INSERT INTO SampleFK02
2 VALUES(12, 'SAMPLE12', SYSDATE, 2);
1 row created.
SQL> INSERT INTO SampleFK02
2 VALUES(13, 'SAMPLE13', SYSDATE, 2);
1 row created.
SQL> SELECT * FROM SamplePK02;
SAMPID
---------1
2
3
SAMPNAME
---------SAMPLE01
SAMPLE02
SAMPLE03
SAMPDATE
--------23-JUN-10
23-JUN-10
23-JUN-10
SAMPNAME
SAMPDATE
SAMPIDFK
---------- --------- ---------SAMPLE10
23-JUN-10
1
SAMPLE11
23-JUN-10
2
SAMPLE12
23-JUN-10
2
SAMPLE13
23-JUN-10
2
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPNAME
---------SAMPLE10
SAMPLE11
SAMPLE12
SAMPLE13
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
1
23-JUN-10
23-JUN-10
23-JUN-10
SQL> cl scr
SQL> CREATE TABLE SamplePK03
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SamplePK03_SampID_PK PRIMARY KEY,
5
SampName VARCHAR2(10),
6
SampDate DATE
7 );
Table created.
SQL> CREATE TABLE SampleFK03_1
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SampleFK03_1_SampID_PK PRIMARY KEY,
5
SampName VARCHAR2(10),
6
SampDate DATE,
7
SampIDFK NUMBER(2)
8
CONSTRAINT SampleFK03_1_SampIDFK_FK
9
REFERENCES SamplePK03(SampID)
10
ON DELETE CASCADE
11 );
Table created.
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE SampleFK03_2
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SampleFK03_2_SampID_PK PRIMARY KEY,
5
SampName VARCHAR2(10),
6
SampDate DATE,
7
SampIDFK NUMBER(2)
8
CONSTRAINT SampleFK03_2_SampIDFK_FK
9
REFERENCES SamplePK03(SampID)
10
ON DELETE SET NULL
11* )
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Table created.
SQL> INSERT INTO SamplePK03
2 VALUES(10, 'SAMPLE10', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK03
2 VALUES(11, 'SAMPLE11', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK03
2 VALUES(12, 'SAMPLE12', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK03
2 VALUES(13, 'SAMPLE13', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK03
2 VALUES(14, 'SAMPLE14', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK03
2 VALUES(15, 'SAMPLE15', SYSDATE);
1 row created.
SQL> INSERT INTO SamplePK03
2 VALUES(16, 'SAMPLE16', SYSDATE);
1 row created.
SQL> COMMIT;
Commit complete.
SQL> INSERT INTO SampleFK03_1
2 VALUES(20, 'SAMPLE20', SYSDATE, 10);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(21, 'SAMPLE21', SYSDATE, 10);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(22, 'SAMPLE22', SYSDATE, 10);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(23, 'SAMPLE23', SYSDATE, 12);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(24, 'SAMPLE24', SYSDATE, 12);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(25, 'SAMPLE25', SYSDATE, 13);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(26, 'SAMPLE26', SYSDATE, 13);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(27, 'SAMPLE27', SYSDATE, 13);
1 row created.
SQL> INSERT INTO SampleFK03_1
2 VALUES(28, 'SAMPLE28', SYSDATE, 15);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(30, 'SAMPLE30', SYSDATE, 10);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(31, 'SAMPLE31', SYSDATE, 10);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(32, 'SAMPLE32', SYSDATE, 11);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(33, 'SAMPLE33', SYSDATE, 11);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(34, 'SAMPLE34', SYSDATE, 14);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(35, 'SAMPLE35', SYSDATE, 14);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(36, 'SAMPLE36', SYSDATE, 14);
1 row created.
SQL> INSERT INTO SampleFK03_2
2 VALUES(37, 'SAMPLE37', SYSDATE, 15);
1 row created.
SQL> COMMIT;
Commit complete.
SQL> cl scr
SQL> SELECT * FROM SamplePK03;
SAMPID
---------10
11
12
13
14
15
16
SAMPNAME
---------SAMPLE10
SAMPLE11
SAMPLE12
SAMPLE13
SAMPLE14
SAMPLE15
SAMPLE16
SAMPDATE
--------23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
7 rows selected.
SQL> SELECT * FROM SampleFK03_1;
SAMPID
---------20
21
22
23
24
25
26
27
28
SAMPNAME
---------SAMPLE20
SAMPLE21
SAMPLE22
SAMPLE23
SAMPLE24
SAMPLE25
SAMPLE26
SAMPLE27
SAMPLE28
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
10
23-JUN-10
10
23-JUN-10
10
23-JUN-10
12
23-JUN-10
12
23-JUN-10
13
23-JUN-10
13
23-JUN-10
13
23-JUN-10
15
9 rows selected.
SQL> SELECT * FROM SampleFK03_2;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPID
---------30
31
32
33
34
35
36
37
SAMPNAME
---------SAMPLE30
SAMPLE31
SAMPLE32
SAMPLE33
SAMPLE34
SAMPLE35
SAMPLE36
SAMPLE37
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
10
23-JUN-10
10
23-JUN-10
11
23-JUN-10
11
23-JUN-10
14
23-JUN-10
14
23-JUN-10
14
23-JUN-10
15
8 rows selected.
SQL> DELETE FROM SamplePK03
2 WHERE SampID = 16;
1 row deleted.
SQL> DELETE FROM SamplePK03
2 WHERE SampID = 12;
1 row deleted.
SQL> SELECT * FROM SamplePK03;
SAMPID
---------10
11
13
14
15
SAMPNAME
---------SAMPLE10
SAMPLE11
SAMPLE13
SAMPLE14
SAMPLE15
SAMPDATE
--------23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
SAMPNAME
---------SAMPLE20
SAMPLE21
SAMPLE22
SAMPLE25
SAMPLE26
SAMPLE27
SAMPLE28
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
10
23-JUN-10
10
23-JUN-10
10
23-JUN-10
13
23-JUN-10
13
23-JUN-10
13
23-JUN-10
15
7 rows selected.
SQL> DELETE FROM SamplePK03
2 WHERE SampID = 14;
1 row deleted.
SQL> SELECT * FROM SampleFK03_2;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPID
---------30
31
32
33
34
35
36
37
SAMPNAME
---------SAMPLE30
SAMPLE31
SAMPLE32
SAMPLE33
SAMPLE34
SAMPLE35
SAMPLE36
SAMPLE37
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
10
23-JUN-10
10
23-JUN-10
11
23-JUN-10
11
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
15
8 rows selected.
SQL> DELETE FROM SamplePK03
2 WHERE SampID = 10;
1 row deleted.
SQL> SELECT * FROM SampleFK03_1;
SAMPID
---------25
26
27
28
SAMPNAME
---------SAMPLE25
SAMPLE26
SAMPLE27
SAMPLE28
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
13
23-JUN-10
13
23-JUN-10
13
23-JUN-10
15
SAMPNAME
---------SAMPLE30
SAMPLE31
SAMPLE32
SAMPLE33
SAMPLE34
SAMPLE35
SAMPLE36
SAMPLE37
SAMPDATE
SAMPIDFK
--------- ---------23-JUN-10
23-JUN-10
23-JUN-10
11
23-JUN-10
11
23-JUN-10
23-JUN-10
23-JUN-10
23-JUN-10
15
8 rows selected.
SQL> cl scr
SQL> CREATE TABLE SamplePK04Self
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SamplePK04Self_SampIDPK PRIMARY KEY,
5
SampName VARCHAR2(10),
6
SampDate DATE,
7
SampIDFK NUMBER(2)
8
CONSTRAINT SamplePK04Self_SampIDFK
9
REFERENCES SamplePK04Self(SampID)
10
ON DELETE SET NULL
11 );
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Table created.
SQL> INSERT INTO SamplePK04Self
2 VALUES(1, 'SAMPLE01', SYSDATE, NULL);
1 row created.
SQL> INSERT INTO SamplePK04Self
2 VALUES(2, 'SAMPLE02', SYSDATE, 1);
1 row created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12*
SQL>
Table created.
SQL> INSERT INTO SamplePK04Self1
2 VALUES(1, 'SAMPLE01', SYSDATE, NULL);
VALUES(1, 'SAMPLE01', SYSDATE, NULL)
*
ERROR at line 2:
ORA-01400: cannot insert NULL into ("SCOTT"."SAMPLEPK04SELF1"."SAMPIDFK")
TABTYPE CLUSTERID
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
-----------------------------DEPT
EMP
BONUS
SALGRADE
DUMMY
CUSTOMER
ORD
ITEM
PRODUCT
PRICE
EMPLOYEES
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
VIEW
TNAME
-----------------------------EMPINFO
EMPGRADES
EMPMANAGERS
EMPACCOUNTS
CUMSUM
ORGDESIGNATIONS
SALES
MYDEPT
MYEMP
SAMPLEPK01
SAMPLEFK01
TABTYPE CLUSTERID
------- ---------VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
VIEW
TABLE
TABLE
TABLE
TABLE
TNAME
-----------------------------SAMPLEPK02
SAMPLEFK02
SAMPLEPK03
SAMPLEFK03_1
SAMPLEFK03_2
SAMPLEPK04SELF
SAMPLEPK04SELF1
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
29 rows selected.
SQL> cl scr
SQL> CREATE TABLE SamplePK04
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SamplePK04_SampID_PK PRIMARY KEY,
5
SampName VARCHAR2(10),
6
SampDate DATE
7 );
Table created.
SQL> CREATE TABLE SampleFK04
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SampleFK04_SampID_FK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5
6
7
8
9
10
REFERENCES SamplePK04(SampID),
SampName VARCHAR2(10),
SampDate DATE,
CONSTRAINT SampleFK04_SampID_PK
PRIMARY KEY(SampID)
);
Table created.
SQL> CREATE TABLE SampleFK04_1
2 (
3
SampID NUMBER(2)
4
CONSTRAINT SampleFK04_1_SampID_FK
5
REFERENCES SampleFK04(SampID),
6
SampName VARCHAR2(10)
7 );
Table created.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Table created.
SQL> CREATE TABLE SampleCKFK01
2 (
3
SampID NUMBER(2),
4
SampName VARCHAR2(10),
5
SampDate DATE,
6
CONSTRAINT SampleCKFK01_SampIDNameCKFK
7
FOREIGN KEY(SampID, SampName)
8
REFERENCES SampleCKPK01(SampID, SampName)
9 );
Table created.
SQL> cl scr
SQL> CREATE TABLE SamplePKUNQ
2 (
3
SampIDPK NUMBER(2)
4
CONSTRAINT SamplePKUNQ_SampIDPK_PK PRIMARY KEY,
5
SampIDUNQ1 NUMBER(2)
6
CONSTRAINT SamplePKUNQ_SampIDUNQ_UNQ UNIQUE,
7
SampDate DATE
8 );
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Table created.
SQL> CREATE TABLE SampleFK
2 (
3
SampIDFKPK NUMBER(2)
4
CONSTRAINT SampleFK_SampIDFKPK_FK
5
REFERENCES SamplePKUNQ(SampIDPK),
6
SampIDFKUNQ NUMBER(2)
7
CONSTRAINT SampleFK_SampIDFKUNQ_FK
8
REFERENCES SamplePKUNQ(SampIDUNQ1)
9 );
Table created.
SQL> SPOOL OFF
SQL> cl scr
SQL> CREATE TABLE MyDept
2 (
3
Deptno NUMBER(2)
4
CONSTRAINT MyDept_Deptno_PK PRIMARY KEY
5
CONSTRAINT MyDept_Deptno_CHK01
6
CHECK(Deptno IN(10, 20, 30, 40, 50, 60, 70, 80, 90)),
7
DName VARCHAR2(16)
8
CONSTRAINT MyDept_DName_NN NOT NULL
9
DEFAULT 'NOT GIVEN'
10
CONSTRAINT MyDept_DName_UNQ UNIQUE
11
CONSTRAINT MyDept_DName_CHK01
12
CHECK(DName = UPPER(DName)),
13
Loc VARCHAR2(14)
14
CONSTRAINT MyDept_Loc_NN NOT NULL
15
DEFAULT 'NOT GIVEN'
16
CONSTRAINT MyDept_Loc_CHK01
17
CHECK(Loc IN('NEW YORK', 'BOSTON', 'CHICAGO', 'DALLAS'))
18 );
DEFAULT 'NOT GIVEN'
*
ERROR at line 9:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
CHECK(DName = UPPER(DName)),
13
Loc VARCHAR2(14)
14
CONSTRAINT MyDept_Loc_NN NOT NULL
15
DEFAULT 'NOT GIVEN'
16
CONSTRAINT MyDept_Loc_CHK01
17
CHECK(Loc IN('NEW YORK', 'BOSTON', 'CHICAGO', 'DALLAS'))
18* )
SQL> /
DEFAULT 'NOT GIVEN')
*
ERROR at line 9:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE MyDept
2 (
3
Deptno NUMBER(2)
4
CONSTRAINT MyDept_Deptno_PK PRIMARY KEY
5
CONSTRAINT MyDept_Deptno_CHK01
6
CHECK(Deptno IN(10, 20, 30, 40, 50, 60, 70, 80, 90)),
7
DName VARCHAR2(16)
8
CONSTRAINT MyDept_DName_NN NOT NULL
9
(DEFAULT 'NOT GIVEN')
10
CONSTRAINT MyDept_DName_UNQ UNIQUE
11
CONSTRAINT MyDept_DName_CHK01
12
CHECK(DName = UPPER(DName)),
13
Loc VARCHAR2(14)
14
CONSTRAINT MyDept_Loc_NN NOT NULL
15
DEFAULT 'NOT GIVEN'
16
CONSTRAINT MyDept_Loc_CHK01
17
CHECK(Loc IN('NEW YORK', 'BOSTON', 'CHICAGO', 'DALLAS'))
18* )
SQL> /
(DEFAULT 'NOT GIVEN')
*
ERROR at line 9:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
CONSTRAINT MyDept_DName_CHK01
12
CHECK(DName = UPPER(DName)),
13
Loc VARCHAR2(14)
14
CONSTRAINT MyDept_Loc_NN NOT NULL
15
DEFAULT 'NOT GIVEN'
16
CONSTRAINT MyDept_Loc_CHK01
17
CHECK(Loc IN('NEW YORK', 'BOSTON', 'CHICAGO', 'DALLAS'))
18* )
SQL> /
DEFAULT 'NOT GIVEN'
*
ERROR at line 15:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18*
SQL>
Table created.
SQL> INSERT INTO MyDept
2 VALUES(1, 'ACCOUNTING', 'NEW YORK');
INSERT INTO MyDept
*
ERROR at line 1:
ORA-02290: check constraint (SCOTT.MYDEPT_DEPTNO_CHK01) violated
SQL> ED
Wrote file afiedt.buf
1 INSERT INTO MyDept(Deptno, DName)
2* VALUES(40, 'OPEARTIONS')
SQL> DROP TABLE MyDept;
Table dropped.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18*
SQL>
Table created.
SQL> INSERT INTO MyDept(Deptno, DName)
2 VALUES(10, 'OPERATIONS');
1 row created.
SQL> INSERT INTO MyDept(Deptno, Loc)
2 VALUES(20, 'BOSTON');
1 row created.
SQL> SELECT * FROM MyDept;
DEPTNO
---------10
20
DNAME
---------------OPERATIONS
NOT GIVEN
LOC
-------------NOT GIVEN
BOSTON
1 row created.
SQL> SELECT * FROM MyDept;
DEPTNO
---------10
20
30
DNAME
---------------OPERATIONS
NOT GIVEN
ACCOUNTING
LOC
-------------NOT GIVEN
BOSTON
NOT GIVEN
SQL> cl scr
SQL> CREATE TABLE MyEmp
2 (
3
Empno NUMBER(4)
4
CONSTRAINT MyEmp_Empno_PK PRIMARY KEY
5
CONSTRAINT MyEmp_Empno_CHK01
6
CHECK(Empno >= 1000 AND Empno <= 4000),
7
Ename VARCHAR2(10)
8
DEFAULT 'NOT GIVEN'
9
CONSTRAINT MyEmp_Ename_NN NOT NULL
10
CONSTRAINT MyEmp_Ename_CHK01
11
CHECK(EName = UPPER(EName)),
12
Job VARCHAR2(14)
13
DEFAULT 'NOT GIVEN'
14
CONSTRAINT MyEmp_Job_NN NOT NULL
15
CONSTRAINT MyEmp_Job_CHK01
16
CHECK(Job IN('PRESIDENT', 'MANAGER', 'ANALYST', 'SALESMAN', 'CLERK', 'NOT
GIVEN')),
17
MGR NUMBER(4)
18
CONSTRAINT MyEmp_MGR_CHK01
19
CHECK(MGR >= 1000 AND MGR <= 4000),
20
Sal NUMBER(7, 2)
21
CONSTRAINT MyEmp_Sal_NN NOT NULL
22
CONSTRAINT MyEmp_Sal_CHK01
23
CHECK(Sal BETWEEN 1000 AND 90000),
24
Comm NUMBER(7, 2),
25
HireDate DATE
26
DEFAULT SYSDATE
27
CONSTRAINT MyEmp_HireDate_NN NOT NULL,
28
Deptno NUMBER(2)
29
CONSTRAINT MyEmp_Deptno_NN NOT NULL
30
CONSTRAINT MyEmp_Deptno_CHK
31
CHECK(Deptno IN(10, 20, 30, 40, 50, 60, 70, 80, 90))
32
CONSTRAINT MyEmp_Deptno_FK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
33
RFERENCES MyDept(Deptno),
34
CONSTRAINT MyEmpSalAndComm_CHK
35
CHECK(Sal + NVL(Comm, 0) <= 90000)
36 );
CONSTRAINT MyEmp_Deptno_FK
*
ERROR at line 32:
ORA-02253: constraint specification not allowed here
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE MyEmp
2 (
3
Empno NUMBER(4)
4
CONSTRAINT MyEmp_Empno_PK PRIMARY KEY
5
CONSTRAINT MyEmp_Empno_CHK01
6
CHECK(Empno >= 1000 AND Empno <= 4000),
7
Ename VARCHAR2(10)
8
DEFAULT 'NOT GIVEN'
9
CONSTRAINT MyEmp_Ename_NN NOT NULL
10
CONSTRAINT MyEmp_Ename_CHK01
11
CHECK(EName = UPPER(EName)),
12
Job VARCHAR2(14)
13
DEFAULT 'NOT GIVEN'
14
CONSTRAINT MyEmp_Job_NN NOT NULL
15
CONSTRAINT MyEmp_Job_CHK01
16
CHECK(Job IN('PRESIDENT', 'MANAGER', 'ANALYST', 'SALESMAN', 'CLERK', 'NOT
GIVEN')),
17
MGR NUMBER(4)
18
CONSTRAINT MyEmp_MGR_CHK01
19
CHECK(MGR >= 1000 AND MGR <= 4000),
20
Sal NUMBER(7, 2)
21
CONSTRAINT MyEmp_Sal_NN NOT NULL
22
CONSTRAINT MyEmp_Sal_CHK01
23
CHECK(Sal BETWEEN 1000 AND 90000),
24
Comm NUMBER(7, 2),
25
HireDate DATE
26
DEFAULT SYSDATE
27
CONSTRAINT MyEmp_HireDate_NN NOT NULL,
28
Deptno NUMBER(2)
29
CONSTRAINT MyEmp_Deptno_NN NOT NULL
30
CONSTRAINT MyEmp_Deptno_FK
31
RFERENCES MyDept(Deptno)
32
CONSTRAINT MyEmp_Deptno_CHK
33
CHECK(Deptno IN(10, 20, 30, 40, 50, 60, 70, 80, 90)),
34
CONSTRAINT MyEmpSalAndComm_CHK
35
CHECK(Sal + NVL(Comm, 0) <= 90000)
36* )
SQL> /
CONSTRAINT MyEmp_Deptno_FK
*
ERROR at line 30:
ORA-02253: constraint specification not allowed here
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE MyEmp
2 (
3
Empno NUMBER(4)
4
CONSTRAINT MyEmp_Empno_PK PRIMARY KEY
5
CONSTRAINT MyEmp_Empno_CHK01
6
CHECK(Empno >= 1000 AND Empno <= 4000),
7
Ename VARCHAR2(10)
8
DEFAULT 'NOT GIVEN'
9
CONSTRAINT MyEmp_Ename_NN NOT NULL
10
CONSTRAINT MyEmp_Ename_CHK01
11
CHECK(EName = UPPER(EName)),
12
Job VARCHAR2(14)
13
DEFAULT 'NOT GIVEN'
14
CONSTRAINT MyEmp_Job_NN NOT NULL
15
CONSTRAINT MyEmp_Job_CHK01
16
CHECK(Job IN('PRESIDENT', 'MANAGER', 'ANALYST', 'SALESMAN', 'CLERK', 'NOT
GIVEN')),
17
MGR NUMBER(4)
18
CONSTRAINT MyEmp_MGR_CHK01
19
CHECK(MGR >= 1000 AND MGR <= 4000),
20
Sal NUMBER(7, 2)
21
CONSTRAINT MyEmp_Sal_NN NOT NULL
22
CONSTRAINT MyEmp_Sal_CHK01
23
CHECK(Sal BETWEEN 1000 AND 90000),
24
Comm NUMBER(7, 2),
25
HireDate DATE
26
DEFAULT SYSDATE
27
CONSTRAINT MyEmp_HireDate_NN NOT NULL,
28
Deptno NUMBER(2)
29
CONSTRAINT MyEmp_Deptno_NN NOT NULL
30
CONSTRAINT MyEmp_Deptno_FK
31
RFERENCES MyDept(Deptno),
32
CONSTRAINT MyEmpSalAndComm_CHK
33
CHECK(Sal + NVL(Comm, 0) <= 90000)
34* )
SQL> /
CONSTRAINT MyEmp_Deptno_FK
*
ERROR at line 30:
ORA-02253: constraint specification not allowed here
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
CHECK(Empno >= 1000 AND Empno <= 4000),
7
Ename VARCHAR2(10)
8
DEFAULT 'NOT GIVEN'
9
CONSTRAINT MyEmp_Ename_NN NOT NULL
10
CONSTRAINT MyEmp_Ename_CHK01
11
CHECK(EName = UPPER(EName)),
12
Job VARCHAR2(14)
13
DEFAULT 'NOT GIVEN'
14
CONSTRAINT MyEmp_Job_NN NOT NULL
15
CONSTRAINT MyEmp_Job_CHK01
16
CHECK(Job IN('PRESIDENT', 'MANAGER', 'ANALYST', 'SALESMAN', 'CLERK', 'NOT
GIVEN')),
17
MGR NUMBER(4)
18
CONSTRAINT MyEmp_MGR_CHK01
19
CHECK(MGR >= 1000 AND MGR <= 4000),
20
Sal NUMBER(7, 2)
21
CONSTRAINT MyEmp_Sal_NN NOT NULL
22
CONSTRAINT MyEmp_Sal_CHK01
23
CHECK(Sal BETWEEN 1000 AND 90000),
24
Comm NUMBER(7, 2),
25
HireDate DATE
26
DEFAULT SYSDATE
27
CONSTRAINT MyEmp_HireDate_NN NOT NULL,
28
Deptno NUMBER(2)
29
CONSTRAINT MyEmp_Deptno_NN NOT NULL
30
CONSTRAINT MyEmp_Deptno_FK
31
REFERENCES MyDept(Deptno)
32
CONSTRAINT MyEmp_Deptno_CHK
33
CHECK(Deptno IN(10, 20, 30, 40, 50, 60, 70, 80, 90)),
34
CONSTRAINT MyEmpSalAndComm_CHK
35
CHECK(Sal + NVL(Comm, 0) <= 90000)
36* )
SQL> /
Table created.
SQL>
2
3
4
5
6
7
8
Table altered.
SQL> cl scr
SQL> CREATE TABLE SampleALT
2 (
3
SampID NUMBER(2),
4
SampName VARCHAR2(10),
5
SampDate DATE
6 );
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Table created.
SQL>
2
3
SQL>
2
3
4
5
6
7
8
9
10
Table altered.
SQL> cl scr
SQL> DESC USER_CONSTRAINTS
Name
----------------------------------------OWNER
CONSTRAINT_NAME
CONSTRAINT_TYPE
TABLE_NAME
SEARCH_CONDITION
R_OWNER
R_CONSTRAINT_NAME
DELETE_RULE
STATUS
DEFERRABLE
DEFERRED
VALIDATED
GENERATED
BAD
RELY
LAST_CHANGE
INDEX_OWNER
INDEX_NAME
INVALID
VIEW_RELATED
SQL>
SQL>
SQL>
SQL>
2
3
Null?
-------NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(1)
NOT NULL VARCHAR2(30)
LONG
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(9)
VARCHAR2(8)
VARCHAR2(14)
VARCHAR2(9)
VARCHAR2(13)
VARCHAR2(14)
VARCHAR2(3)
VARCHAR2(4)
DATE
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(7)
VARCHAR2(14)
CONSTRAINT_NAME
C TABLE_NAME
SEARCH_CONDITION
-------------------- - --------------- ------------------------SAMPLEALT_SAMPID_PK P SAMPLEALT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPLEALT_SAMPID_CHK C SAMPLEALT
SAMPLEALT_SAMPNAME_C C SAMPLEALT
HK
SampID >= 10
SampName = UPPER(SampName
)
Null?
-------NOT NULL
NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(4000)
NUMBER
Null?
-------NOT NULL
NOT NULL
NOT NULL
Type
---------------------------NUMBER(4)
VARCHAR2(10)
VARCHAR2(14)
NUMBER(4)
NOT NULL NUMBER(7,2)
NUMBER(7,2)
NOT NULL DATE
NOT NULL NUMBER(2)
C
C
C
C
C
C
C
TABLE_NAME
--------------MYEMP
MYEMP
MYEMP
MYEMP
MYEMP
MYEMP
MYEMP_ENAME_CHK01
MYEMP_JOB_CHK01
C MYEMP
C MYEMP
SEARCH_CONDITION
------------------------"ENAME" IS NOT NULL
"JOB" IS NOT NULL
"SAL" IS NOT NULL
"HIREDATE" IS NOT NULL
"DEPTNO" IS NOT NULL
Empno >= 1000 AND Empno <
= 4000
EName = UPPER(EName)
Job IN('PRESIDENT', 'MANA
GER', 'ANALYST', 'SALESMA
CONSTRAINT_NAME
C TABLE_NAME
SEARCH_CONDITION
-------------------- - --------------- ------------------------N', 'CLERK', 'NOT GIVEN')
MYEMP_MGR_CHK01
C MYEMP
MYEMP_SAL_CHK01
C MYEMP
MYEMP_DEPTNO_CHK
C MYEMP
CONSTRAINT_NAME
C TABLE_NAME
SEARCH_CONDITION
-------------------- - --------------- ------------------------MYEMPSALANDCOMM_CHK C MYEMP
Sal + NVL(Comm, 0) <= 900
00
MYEMP_EMPNO_PK
MYEMP_DEPTNO_FK
MYEMP_MGR_FK
P MYEMP
R MYEMP
R MYEMP
15 rows selected.
SQL> cl scr
SQL> DESC USER_CONSTRAINTS
Name
----------------------------------------OWNER
CONSTRAINT_NAME
CONSTRAINT_TYPE
TABLE_NAME
SEARCH_CONDITION
R_OWNER
R_CONSTRAINT_NAME
DELETE_RULE
STATUS
DEFERRABLE
DEFERRED
VALIDATED
GENERATED
BAD
RELY
LAST_CHANGE
INDEX_OWNER
INDEX_NAME
INVALID
VIEW_RELATED
SQL> DESC USER_CONS_COLUMNS
Name
----------------------------------------OWNER
CONSTRAINT_NAME
TABLE_NAME
COLUMN_NAME
POSITION
Null?
-------NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(1)
NOT NULL VARCHAR2(30)
LONG
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(9)
VARCHAR2(8)
VARCHAR2(14)
VARCHAR2(9)
VARCHAR2(13)
VARCHAR2(14)
VARCHAR2(3)
VARCHAR2(4)
DATE
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(7)
VARCHAR2(14)
Null?
-------NOT NULL
NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(4000)
NUMBER
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> SELECT Ename, Sal, Job, Dname, Loc
2 FROM Emp, Dept;
ENAME
SAL JOB
DNAME
---------- ---------- --------- -------------KING
5000 PRESIDENT ACCOUNTING
BLAKE
2850 MANAGER
ACCOUNTING
CLARK
2450 MANAGER
ACCOUNTING
JONES
2975 MANAGER
ACCOUNTING
MARTIN
1250 SALESMAN ACCOUNTING
ALLEN
1600 SALESMAN ACCOUNTING
TURNER
1500 SALESMAN ACCOUNTING
JAMES
950 CLERK
ACCOUNTING
WARD
1250 SALESMAN ACCOUNTING
FORD
3000 ANALYST
ACCOUNTING
SMITH
800 CLERK
ACCOUNTING
LOC
------------NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
ENAME
SAL JOB
---------- ---------- --------SCOTT
3000 ANALYST
ADAMS
1100 CLERK
MILLER
1300 CLERK
KING
5000 PRESIDENT
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
JONES
2975 MANAGER
MARTIN
1250 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
DNAME
-------------ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
ENAME
SAL JOB
---------- ---------- --------WARD
1250 SALESMAN
FORD
3000 ANALYST
SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
MILLER
1300 CLERK
KING
5000 PRESIDENT
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
JONES
2975 MANAGER
MARTIN
1250 SALESMAN
DNAME
-------------RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
SALES
SALES
LOC
------------DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
ENAME
SAL JOB
DNAME
LOC
---------- ---------- --------- -------------- ------------ALLEN
1600 SALESMAN SALES
CHICAGO
TURNER
1500 SALESMAN SALES
CHICAGO
JAMES
950 CLERK
SALES
CHICAGO
WARD
1250 SALESMAN SALES
CHICAGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
SMITH
SCOTT
ADAMS
MILLER
KING
BLAKE
3000
800
3000
1100
1300
5000
2850
ANALYST
CLERK
ANALYST
CLERK
CLERK
PRESIDENT
MANAGER
ENAME
SAL JOB
---------- ---------- --------CLARK
2450 MANAGER
JONES
2975 MANAGER
MARTIN
1250 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
WARD
1250 SALESMAN
FORD
3000 ANALYST
SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
SALES
SALES
SALES
SALES
SALES
OPERATIONS
OPERATIONS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
BOSTON
BOSTON
DNAME
-------------OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
LOC
------------BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
ENAME
SAL JOB
DNAME
LOC
---------- ---------- --------- -------------- ------------MILLER
1300 CLERK
OPERATIONS
BOSTON
56 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Job
2* FROM Emp, Dept
SQL> /
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
KING
5000 PRESIDENT
KING
5000 PRESIDENT
KING
5000 PRESIDENT
BLAKE
2850 MANAGER
BLAKE
2850 MANAGER
BLAKE
2850 MANAGER
BLAKE
2850 MANAGER
CLARK
2450 MANAGER
CLARK
2450 MANAGER
CLARK
2450 MANAGER
ENAME
SAL JOB
---------- ---------- --------CLARK
2450 MANAGER
JONES
2975 MANAGER
JONES
2975 MANAGER
JONES
2975 MANAGER
JONES
2975 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MARTIN
MARTIN
MARTIN
MARTIN
ALLEN
ALLEN
1250
1250
1250
1250
1600
1600
SALESMAN
SALESMAN
SALESMAN
SALESMAN
SALESMAN
SALESMAN
ENAME
SAL JOB
---------- ---------- --------ALLEN
1600 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
TURNER
1500 SALESMAN
TURNER
1500 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
JAMES
950 CLERK
JAMES
950 CLERK
JAMES
950 CLERK
WARD
1250 SALESMAN
ENAME
SAL JOB
---------- ---------- --------WARD
1250 SALESMAN
WARD
1250 SALESMAN
WARD
1250 SALESMAN
FORD
3000 ANALYST
FORD
3000 ANALYST
FORD
3000 ANALYST
FORD
3000 ANALYST
SMITH
800 CLERK
SMITH
800 CLERK
SMITH
800 CLERK
SMITH
800 CLERK
ENAME
SAL JOB
---------- ---------- --------SCOTT
3000 ANALYST
SCOTT
3000 ANALYST
SCOTT
3000 ANALYST
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
ADAMS
1100 CLERK
ADAMS
1100 CLERK
ADAMS
1100 CLERK
MILLER
1300 CLERK
MILLER
1300 CLERK
MILLER
1300 CLERK
ENAME
SAL JOB
---------- ---------- --------MILLER
1300 CLERK
56 rows selected.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
LOC
------------NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
DNAME
-------------ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DNAME
-------------RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
SALES
SALES
LOC
------------DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
DNAME
LOC
-------------- ------------SALES
CHICAGO
SALES
CHICAGO
SALES
CHICAGO
SALES
CHICAGO
SALES
CHICAGO
SALES
CHICAGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SALES
SALES
SALES
OPERATIONS
OPERATIONS
CHICAGO
CHICAGO
CHICAGO
BOSTON
BOSTON
DNAME
-------------OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
LOC
------------BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
DNAME
LOC
-------------- ------------OPERATIONS
BOSTON
56 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Job, Deptno, Dname, Loc
2* FROM Emp, Dept
SQL> /
SELECT Ename, Job, Deptno, Dname, Loc
*
ERROR at line 1:
ORA-00918: column ambiguously defined
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Job, Emp.Deptno, Dname, Loc
2* FROM Emp, Dept
SQL> /
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
JOB
DEPTNO DNAME
LOC
--------- ---------- -------------- ------------PRESIDENT
10 ACCOUNTING
NEW YORK
MANAGER
30 ACCOUNTING
NEW YORK
MANAGER
10 ACCOUNTING
NEW YORK
MANAGER
20 ACCOUNTING
NEW YORK
SALESMAN
30 ACCOUNTING
NEW YORK
SALESMAN
30 ACCOUNTING
NEW YORK
SALESMAN
30 ACCOUNTING
NEW YORK
CLERK
30 ACCOUNTING
NEW YORK
SALESMAN
30 ACCOUNTING
NEW YORK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
SMITH
ANALYST
CLERK
20 ACCOUNTING
20 ACCOUNTING
NEW YORK
NEW YORK
ENAME
---------SCOTT
ADAMS
MILLER
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
JOB
DEPTNO DNAME
--------- ---------- -------------ANALYST
20 ACCOUNTING
CLERK
20 ACCOUNTING
CLERK
10 ACCOUNTING
PRESIDENT
10 RESEARCH
MANAGER
30 RESEARCH
MANAGER
10 RESEARCH
MANAGER
20 RESEARCH
SALESMAN
30 RESEARCH
SALESMAN
30 RESEARCH
SALESMAN
30 RESEARCH
CLERK
30 RESEARCH
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
ENAME
---------WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
KING
BLAKE
CLARK
JONES
MARTIN
JOB
DEPTNO DNAME
--------- ---------- -------------SALESMAN
30 RESEARCH
ANALYST
20 RESEARCH
CLERK
20 RESEARCH
ANALYST
20 RESEARCH
CLERK
20 RESEARCH
CLERK
10 RESEARCH
PRESIDENT
10 SALES
MANAGER
30 SALES
MANAGER
10 SALES
MANAGER
20 SALES
SALESMAN
30 SALES
LOC
------------DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
ENAME
---------ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
KING
BLAKE
JOB
DEPTNO DNAME
--------- ---------- -------------SALESMAN
30 SALES
SALESMAN
30 SALES
CLERK
30 SALES
SALESMAN
30 SALES
ANALYST
20 SALES
CLERK
20 SALES
ANALYST
20 SALES
CLERK
20 SALES
CLERK
10 SALES
PRESIDENT
10 OPERATIONS
MANAGER
30 OPERATIONS
LOC
------------CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
BOSTON
BOSTON
ENAME
---------CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
DEPTNO DNAME
LOC
--------- ---------- -------------- ------------MANAGER
10 OPERATIONS
BOSTON
MANAGER
20 OPERATIONS
BOSTON
SALESMAN
30 OPERATIONS
BOSTON
SALESMAN
30 OPERATIONS
BOSTON
SALESMAN
30 OPERATIONS
BOSTON
CLERK
30 OPERATIONS
BOSTON
SALESMAN
30 OPERATIONS
BOSTON
ANALYST
20 OPERATIONS
BOSTON
CLERK
20 OPERATIONS
BOSTON
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
ADAMS
ANALYST
CLERK
20 OPERATIONS
20 OPERATIONS
BOSTON
BOSTON
ENAME
JOB
DEPTNO DNAME
LOC
---------- --------- ---------- -------------- ------------MILLER
CLERK
10 OPERATIONS
BOSTON
56 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Job, Dept.Deptno, Dname, Loc
2* FROM Emp, Dept
SQL> /
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
DEPTNO DNAME
--------- ---------- -------------PRESIDENT
10 ACCOUNTING
MANAGER
10 ACCOUNTING
MANAGER
10 ACCOUNTING
MANAGER
10 ACCOUNTING
SALESMAN
10 ACCOUNTING
SALESMAN
10 ACCOUNTING
SALESMAN
10 ACCOUNTING
CLERK
10 ACCOUNTING
SALESMAN
10 ACCOUNTING
ANALYST
10 ACCOUNTING
CLERK
10 ACCOUNTING
LOC
------------NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
ENAME
---------SCOTT
ADAMS
MILLER
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
JOB
DEPTNO DNAME
--------- ---------- -------------ANALYST
10 ACCOUNTING
CLERK
10 ACCOUNTING
CLERK
10 ACCOUNTING
PRESIDENT
20 RESEARCH
MANAGER
20 RESEARCH
MANAGER
20 RESEARCH
MANAGER
20 RESEARCH
SALESMAN
20 RESEARCH
SALESMAN
20 RESEARCH
SALESMAN
20 RESEARCH
CLERK
20 RESEARCH
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
ENAME
---------WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
KING
BLAKE
CLARK
JONES
JOB
DEPTNO DNAME
LOC
--------- ---------- -------------- ------------SALESMAN
20 RESEARCH
DALLAS
ANALYST
20 RESEARCH
DALLAS
CLERK
20 RESEARCH
DALLAS
ANALYST
20 RESEARCH
DALLAS
CLERK
20 RESEARCH
DALLAS
CLERK
20 RESEARCH
DALLAS
PRESIDENT
30 SALES
CHICAGO
MANAGER
30 SALES
CHICAGO
MANAGER
30 SALES
CHICAGO
MANAGER
30 SALES
CHICAGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MARTIN
SALESMAN
30 SALES
CHICAGO
ENAME
---------ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
KING
BLAKE
JOB
DEPTNO DNAME
--------- ---------- -------------SALESMAN
30 SALES
SALESMAN
30 SALES
CLERK
30 SALES
SALESMAN
30 SALES
ANALYST
30 SALES
CLERK
30 SALES
ANALYST
30 SALES
CLERK
30 SALES
CLERK
30 SALES
PRESIDENT
40 OPERATIONS
MANAGER
40 OPERATIONS
LOC
------------CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
BOSTON
BOSTON
ENAME
---------CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
JOB
DEPTNO DNAME
--------- ---------- -------------MANAGER
40 OPERATIONS
MANAGER
40 OPERATIONS
SALESMAN
40 OPERATIONS
SALESMAN
40 OPERATIONS
SALESMAN
40 OPERATIONS
CLERK
40 OPERATIONS
SALESMAN
40 OPERATIONS
ANALYST
40 OPERATIONS
CLERK
40 OPERATIONS
ANALYST
40 OPERATIONS
CLERK
40 OPERATIONS
LOC
------------BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
ENAME
JOB
DEPTNO DNAME
LOC
---------- --------- ---------- -------------- ------------MILLER
CLERK
40 OPERATIONS
BOSTON
56 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT Ename, Emp.Deptno, Dname, Loc
2 FROM Emp, Dept
3 WHERE Emp.Deptno = Dept.Deptno;
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------KING
10 ACCOUNTING
NEW YORK
BLAKE
30 SALES
CHICAGO
CLARK
10 ACCOUNTING
NEW YORK
JONES
20 RESEARCH
DALLAS
MARTIN
30 SALES
CHICAGO
ALLEN
30 SALES
CHICAGO
TURNER
30 SALES
CHICAGO
JAMES
30 SALES
CHICAGO
WARD
30 SALES
CHICAGO
FORD
20 RESEARCH
DALLAS
SMITH
20 RESEARCH
DALLAS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
DEPTNO DNAME
---------- ---------- -------------SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
MILLER
10 ACCOUNTING
LOC
------------DALLAS
DALLAS
NEW YORK
14 rows selected.
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
Select
Empno,
Ename,
Sal,
Sal * 12 AnnSal,
Emp.Deptno,
Loc
FROM Emp, Dept
WHERE Emp.Deptno = Dept.Deptno;
EMPNO
---------7839
7782
7934
7566
7788
7876
7369
7902
7698
7654
7499
ENAME
SAL
ANNSAL
DEPTNO LOC
---------- ---------- ---------- ---------- ------------KING
5000
60000
10 NEW YORK
CLARK
2450
29400
10 NEW YORK
MILLER
1300
15600
10 NEW YORK
JONES
2975
35700
20 DALLAS
SCOTT
3000
36000
20 DALLAS
ADAMS
1100
13200
20 DALLAS
SMITH
800
9600
20 DALLAS
FORD
3000
36000
20 DALLAS
BLAKE
2850
34200
30 CHICAGO
MARTIN
1250
15000
30 CHICAGO
ALLEN
1600
19200
30 CHICAGO
EMPNO
---------7844
7900
7521
ENAME
SAL
ANNSAL
DEPTNO LOC
---------- ---------- ---------- ---------- ------------TURNER
1500
18000
30 CHICAGO
JAMES
950
11400
30 CHICAGO
WARD
1250
15000
30 CHICAGO
14 rows selected.
SQL> cl scr
SQL> Select
2 Dept.Deptno,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5
6
7
8
Dname,
Loc,
SUM(Sal)
FROM Emp, Dept
WHERE Emp.Deptno = Dept.Deptno
GROUP BY Dept.Deptno, Dname, Loc;
DEPTNO
---------10
20
30
SQL>
2
3
4
5
6
7
8
9
DNAME
-------------ACCOUNTING
RESEARCH
SALES
LOC
SUM(SAL)
------------- ---------NEW YORK
8750
DALLAS
10875
CHICAGO
9400
Select
TO_CHAR(HireDate, 'YYYY') Year,
Dept.Deptno,
Dname,
SUM(Sal)
FROM Emp, Dept
WHERE Emp.Deptno = Dept.Deptno
GROUP BY TO_CHAR(HireDate, 'YYYY'), Dept.Deptno, Dname
ORDER BY Year;
YEAR
DEPTNO DNAME
SUM(SAL)
---- ---------- -------------- ---------1980
20 RESEARCH
800
1981
10 ACCOUNTING
7450
1981
20 RESEARCH
5975
1981
30 SALES
9400
1982
10 ACCOUNTING
1300
1982
20 RESEARCH
3000
1983
20 RESEARCH
1100
7 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
Select
TO_CHAR(HireDate, 'YYYY') Year,
Dept.Deptno,
Dname,
SUM(Sal)
FROM Emp, Dept
WHERE Emp.Deptno = Dept.Deptno
GROUP BY TO_CHAR(HireDate, 'YYYY'), Dept.Deptno, Dname
HAVING COUNT(TO_CHAR(HireDate, 'YYYY')) > 2
ORDER BY Year;
YEAR
DEPTNO DNAME
SUM(SAL)
---- ---------- -------------- ---------1981
30 SALES
9400
SQL> ED
Wrote file afiedt.buf
1
Select
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
7
8
9*
SQL>
YEAR
DEPTNO DNAME
SUM(SAL)
---- ---------- -------------- ---------1980
20 RESEARCH
800
1981
10 ACCOUNTING
7450
1981
20 RESEARCH
5975
1981
30 SALES
9400
1982
10 ACCOUNTING
1300
1982
20 RESEARCH
3000
1983
20 RESEARCH
1100
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
Select
TO_CHAR(HireDate, 'YYYY') Year,
Dept.Deptno,
Dname,
COUNT(*) Cnt,
SUM(Sal)
FROM Emp, Dept
WHERE Emp.Deptno = Dept.Deptno
GROUP BY TO_CHAR(HireDate, 'YYYY'), Dept.Deptno, Dname
ORDER BY Year
/
YEAR
DEPTNO DNAME
CNT
SUM(SAL)
---- ---------- -------------- ---------- ---------1980
20 RESEARCH
1
800
1981
10 ACCOUNTING
2
7450
1981
20 RESEARCH
2
5975
1981
30 SALES
6
9400
1982
10 ACCOUNTING
1
1300
1982
20 RESEARCH
1
3000
1983
20 RESEARCH
1
1100
7 rows selected.
SQL> cl scr
SQL> SELECT Ename, Ename
2 FROM Emp;
ENAME
ENAME
---------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
---------SCOTT
ADAMS
MILLER
ENAME
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Job, Sal
2* FROM Emp, Emp
SQL> /
SELECT Ename, Job, Sal
*
ERROR at line 1:
ORA-00918: column ambiguously defined
SQL> ED
Wrote file afiedt.buf
1 SELECT 125
2* FROM Emp
SQL> /
125
---------125
125
125
125
125
125
125
125
125
125
125
125
---------125
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
125
125
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT 125
2* FROM Emp, Emp
SQL> /
SQL> cl scr
SQL> SELECT Ename
2 FROM Emp, Emp
3
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename
2* FROM Emp E1, Emp E2
SQL> /
SELECT Ename
*
ERROR at line 1:
ORA-00918: column ambiguously defined
SQL> ED
Wrote file afiedt.buf
1 SELECT E1.Ename
2* FROM Emp E1, Emp E2
SQL> /
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
E.Empno,
E.Ename,
D.Deptno,
D.Dname
FROM Emp E, Dept D
WHERE E.Deptno = D.Deptno;
EMPNO
---------7839
7782
7934
7566
7788
7876
7369
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7902
7698
7654
7499
EMPNO
---------7844
7900
7521
FORD
BLAKE
MARTIN
ALLEN
20
30
30
30
RESEARCH
SALES
SALES
SALES
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 E.Empno,
3 E.Ename,
4 Dept.Deptno,
5 D.Dname
6 FROM Emp E, Dept D
7* WHERE E.Deptno = D.Deptno
SQL> /
Dept.Deptno,
*
ERROR at line 4:
ORA-00904: "DEPT"."DEPTNO": invalid identifier
SQL>
2
3
4
5
6
7
8
9
SELECT
E.Ename,
E.Job,
D.Deptno,
D.Dname,
D.Loc
FROM Emp E, Dept D
WHERE E.Deptno = D.Deptno AND
E.Job IN('ANALYST', 'MANAGER' );
ENAME
---------CLARK
JONES
FORD
SCOTT
BLAKE
JOB
DEPTNO DNAME
--------- ---------- -------------MANAGER
10 ACCOUNTING
MANAGER
20 RESEARCH
ANALYST
20 RESEARCH
ANALYST
20 RESEARCH
MANAGER
30 SALES
LOC
------------NEW YORK
DALLAS
DALLAS
DALLAS
CHICAGO
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Ename,
DName,
Loc
FROM Emp Employees, Dept Departments
WHERE Employees.Deptno = Departments.Deptno;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
CLARK
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
DNAME
-------------ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
---------TURNER
JAMES
WARD
DNAME
-------------SALES
SALES
SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
Ename,
DName,
Loc
FROM Emp E, Dept D
WHERE E.Deptno = D.Deptno
/
ENAME
---------KING
CLARK
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
DNAME
-------------ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
---------TURNER
JAMES
WARD
DNAME
-------------SALES
SALES
SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT Empno, Ename, MGR
2 FROM Emp;
EMPNO
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
MGR
---------- ---------KING
BLAKE
7839
CLARK
7839
JONES
7839
MARTIN
7698
ALLEN
7698
TURNER
7698
JAMES
7698
WARD
7698
FORD
7566
SMITH
7902
EMPNO
---------7788
7876
7934
ENAME
MGR
---------- ---------SCOTT
7566
ADAMS
7788
MILLER
7782
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Empno, Ename, Sal, MGR
2* FROM Emp
SQL> /
EMPNO
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
SAL
MGR
---------- ---------- ---------KING
5000
BLAKE
2850
7839
CLARK
2450
7839
JONES
2975
7839
MARTIN
1250
7698
ALLEN
1600
7698
TURNER
1500
7698
JAMES
950
7698
WARD
1250
7698
FORD
3000
7566
SMITH
800
7902
EMPNO
---------7788
7876
7934
ENAME
SAL
MGR
---------- ---------- ---------SCOTT
3000
7566
ADAMS
1100
7788
MILLER
1300
7782
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
5
SELECT
E1.Ename "Employees",
E2. Ename "Managers"
FROM Emp E1, Emp E2
WHERE E1.Mgr = E2.Empno;
Employees
---------FORD
SCOTT
MARTIN
ALLEN
JAMES
TURNER
WARD
MILLER
ADAMS
BLAKE
CLARK
Managers
---------JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
SCOTT
KING
KING
Employees
---------JONES
SMITH
Managers
---------KING
FORD
13 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
E1.Ename,
E2. Ename
FROM Emp E1, Emp E2
WHERE E1.Mgr = E2.Empno
/
ENAME
---------FORD
SCOTT
MARTIN
ALLEN
JAMES
TURNER
WARD
MILLER
ADAMS
BLAKE
CLARK
ENAME
---------JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
SCOTT
KING
KING
ENAME
ENAME
---------- ---------JONES
KING
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SMITH
FORD
13 rows selected.
SQL> cl scr
SQL>
2
3
4
5
SELECT
Employees.Ename "Employees",
Managers.Ename "Managers"
FROM Emp Employees, Emp Managers
WHERE Employees.Mgr = Managers.Empno;
Employees
---------FORD
SCOTT
MARTIN
ALLEN
JAMES
TURNER
WARD
MILLER
ADAMS
BLAKE
CLARK
Managers
---------JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
SCOTT
KING
KING
Employees
---------JONES
SMITH
Managers
---------KING
FORD
13 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
Employees.Ename "Employees",
Managers.Ename "Managers"
FROM Emp Employees, Emp Managers
WHERE Managers.Mgr = Employees.Empno
/
Employees
---------JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
SCOTT
KING
KING
Managers
---------FORD
SCOTT
MARTIN
ALLEN
JAMES
TURNER
WARD
MILLER
ADAMS
BLAKE
CLARK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Employees
---------KING
FORD
Managers
---------JONES
SMITH
13 rows selected.
SQL> cl scr
SQL>
2
3
4
5
SELECT
E1.Ename||'''s Manager is '||
E2.Ename "Employees And Managers"
FROM Emp E1, Emp E2
WHERE E1.Mgr = E2.Empno;
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
EMPNO
---------7788
7876
7934
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> SELECT LoSal, HiSal, Grade
2 FROM DalGrade;
FROM DalGrade
*
ERROR at line 2:
ORA-00942: table or view does not exist
SQL> Ed
Wrote file afiedt.buf
1 SELECT LoSal, HiSal, Grade
2* FROM SalGrade
SQL> /
LOSAL
HISAL
GRADE
---------- ---------- ---------700
1200
1
1201
1400
2
1401
2000
3
2001
3000
4
3001
9999
5
SQL> SELECT Empno, Ename, Sal
2 FROM Emp;
EMPNO
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
EMPNO
---------7788
7876
7934
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT Ename, Emp.Deptno, Dname, Loc
2 FROM Emp, Dept
3 WHERE Emp.Deptno = Dept.Deptno;
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
BLAKE
30 SALES
CLARK
10 ACCOUNTING
JONES
20 RESEARCH
MARTIN
30 SALES
ALLEN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
FORD
20 RESEARCH
SMITH
20 RESEARCH
LOC
------------NEW YORK
CHICAGO
NEW YORK
DALLAS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
DALLAS
DALLAS
ENAME
DEPTNO DNAME
---------- ---------- -------------SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
MILLER
10 ACCOUNTING
LOC
------------DALLAS
DALLAS
NEW YORK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO DNAME
---------- ---------- -------------JONES
20 ACCOUNTING
SCOTT
20 ACCOUNTING
ADAMS
20 ACCOUNTING
SMITH
20 ACCOUNTING
FORD
20 ACCOUNTING
BLAKE
30 ACCOUNTING
MARTIN
30 ACCOUNTING
ALLEN
30 ACCOUNTING
TURNER
30 ACCOUNTING
JAMES
30 ACCOUNTING
WARD
30 ACCOUNTING
LOC
------------NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------BLAKE
30 RESEARCH
DALLAS
MARTIN
30 RESEARCH
DALLAS
ALLEN
30 RESEARCH
DALLAS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TURNER
JAMES
WARD
30 RESEARCH
30 RESEARCH
30 RESEARCH
DALLAS
DALLAS
DALLAS
17 rows selected.
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> cl scr
SQL> SELECT Ename, Deptno, Job, Sal, Grade
2 FROM Emp, SalGrade
3 WHERE Emp.Sal >= SalGrade.LoSal AND
4
Emp.Sal <= SalGrade.HiSal;
ENAME
DEPTNO JOB
SAL
GRADE
---------- ---------- --------- ---------- ---------SMITH
20 CLERK
800
1
JAMES
30 CLERK
950
1
ADAMS
20 CLERK
1100
1
MARTIN
30 SALESMAN
1250
2
WARD
30 SALESMAN
1250
2
MILLER
10 CLERK
1300
2
TURNER
30 SALESMAN
1500
3
ALLEN
30 SALESMAN
1600
3
CLARK
10 MANAGER
2450
4
BLAKE
30 MANAGER
2850
4
JONES
20 MANAGER
2975
4
ENAME
DEPTNO JOB
SAL
GRADE
---------- ---------- --------- ---------- ---------FORD
20 ANALYST
3000
4
SCOTT
20 ANALYST
3000
4
KING
10 PRESIDENT
5000
5
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO JOB
SAL
GRADE
---------- ---------- --------- ---------- ---------SMITH
20 CLERK
800
1
JAMES
30 CLERK
950
1
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
MARTIN
WARD
MILLER
TURNER
ALLEN
CLARK
BLAKE
JONES
20
30
30
10
30
30
10
30
20
CLERK
SALESMAN
SALESMAN
CLERK
SALESMAN
SALESMAN
MANAGER
MANAGER
MANAGER
1100
1250
1250
1300
1500
1600
2450
2850
2975
1
2
2
2
3
3
4
4
4
ENAME
DEPTNO JOB
SAL
GRADE
---------- ---------- --------- ---------- ---------FORD
20 ANALYST
3000
4
SCOTT
20 ANALYST
3000
4
KING
10 PRESIDENT
5000
5
14 rows selected.
SQL> cl scr
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
CARGO
COURIER
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
DELHI
7 rows selected.
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
SELECT
EMPNO
----7839
7782
7934
7566
7788
7876
7369
7902
7698
7654
7499
ENAME
---------KING
CLARK
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ---------- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 09-JUN-81 2450
10
CLERK
7782 23-JAN-82 1300
10
MANAGER
7839 02-APR-81 2975
20
ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7902 17-DEC-80
800
20
ANALYST
7566 03-DEC-81 3000
20
MANAGER
7839 01-MAY-81 2850
30
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
EMPNO
----7844
7900
7521
ENAME
---------TURNER
JAMES
WARD
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ---------- --------- ----- ----- -----SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
14 rows selected.
SQL> SELECT Ename, Sal, Emp.Deptno Deptno, Dname, Loc
2 FROM Emp, Dept
3 WHERE Emp.Deptno = Dept.Deptno;
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------KING
5000
10 ACCOUNTING
NEW YORK
CLARK
2450
10 ACCOUNTING
NEW YORK
MILLER
1300
10 ACCOUNTING
NEW YORK
JONES
2975
20 RESEARCH
DALLAS
SCOTT
3000
20 RESEARCH
DALLAS
ADAMS
1100
20 RESEARCH
DALLAS
SMITH
800
20 RESEARCH
DALLAS
FORD
3000
20 RESEARCH
DALLAS
BLAKE
2850
30 SALES
CHICAGO
MARTIN
1250
30 SALES
CHICAGO
ALLEN
1600
30 SALES
CHICAGO
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------TURNER
1500
30 SALES
CHICAGO
JAMES
950
30 SALES
CHICAGO
WARD
1250
30 SALES
CHICAGO
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------KING
5000
10 ACCOUNTING
NEW YORK
CLARK
2450
10 ACCOUNTING
NEW YORK
MILLER
1300
10 ACCOUNTING
NEW YORK
JONES
2975
20 RESEARCH
DALLAS
SCOTT
3000
20 RESEARCH
DALLAS
ADAMS
1100
20 RESEARCH
DALLAS
SMITH
800
20 RESEARCH
DALLAS
FORD
3000
20 RESEARCH
DALLAS
BLAKE
2850
30 SALES
CHICAGO
MARTIN
1250
30 SALES
CHICAGO
ALLEN
1600
30 SALES
CHICAGO
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------TURNER
1500
30 SALES
CHICAGO
JAMES
950
30 SALES
CHICAGO
WARD
1250
30 SALES
CHICAGO
OPERATIONS
BOSTON
SHIPPING
CHENNAI
CARGO
MUMBAI
COURIER
DELHI
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------KING
5000
10 ACCOUNTING
NEW YORK
CLARK
2450
10 ACCOUNTING
NEW YORK
MILLER
1300
10 ACCOUNTING
NEW YORK
JONES
2975
20 RESEARCH
DALLAS
SCOTT
3000
20 RESEARCH
DALLAS
ADAMS
1100
20 RESEARCH
DALLAS
SMITH
800
20 RESEARCH
DALLAS
FORD
3000
20 RESEARCH
DALLAS
BLAKE
2850
30 SALES
CHICAGO
MARTIN
1250
30 SALES
CHICAGO
ALLEN
1600
30 SALES
CHICAGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------TURNER
1500
30 SALES
CHICAGO
JAMES
950
30 SALES
CHICAGO
WARD
1250
30 SALES
CHICAGO
40 OPERATIONS
BOSTON
50 SHIPPING
CHENNAI
60 CARGO
MUMBAI
70 COURIER
DELHI
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------MILLER
1300
10 ACCOUNTING
NEW YORK
CLARK
2450
10 ACCOUNTING
NEW YORK
KING
5000
10 ACCOUNTING
NEW YORK
ADAMS
1100
20 RESEARCH
DALLAS
SCOTT
3000
20 RESEARCH
DALLAS
SMITH
800
20 RESEARCH
DALLAS
FORD
3000
20 RESEARCH
DALLAS
JONES
2975
20 RESEARCH
DALLAS
WARD
1250
30 SALES
CHICAGO
JAMES
950
30 SALES
CHICAGO
TURNER
1500
30 SALES
CHICAGO
ENAME
SAL DEPTNO DNAME
LOC
---------- ----- ------ -------------- ------------ALLEN
1600
30 SALES
CHICAGO
MARTIN
1250
30 SALES
CHICAGO
BLAKE
2850
30 SALES
CHICAGO
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
NVL(Ename, 'NOT RECRUITED') Ename,
Dept.Deptno Deptno,
Dname,
Loc
FROM Emp, Dept
WHERE Emp.Deptno(+) = Dept.Deptno
/
ENAME
DEPTNO DNAME
LOC
------------- ------ -------------- ------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
CLARK
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
10
10
10
20
20
20
20
20
30
30
30
ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
LOC
------------- ------ -------------- ------------TURNER
30 SALES
CHICAGO
JAMES
30 SALES
CHICAGO
WARD
30 SALES
CHICAGO
NOT RECRUITED
40 OPERATIONS
BOSTON
NOT RECRUITED
50 SHIPPING
CHENNAI
NOT RECRUITED
60 CARGO
MUMBAI
NOT RECRUITED
70 COURIER
DELHI
18 rows selected.
SQL> cl scr
SQL>
2
3
4
5
ENAME
DEPTNO DNAME
---------- ------ -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
DEPTNO DNAME
LOC
---------- ------ -------------- ------------KING
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
MILLER
10 ACCOUNTING
NEW YORK
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5*
SQL>
ENAME
DEPTNO DNAME
LOC
---------- ------ -------------- ------------KING
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
MILLER
10 ACCOUNTING
NEW YORK
20 RESEARCH
DALLAS
30 SALES
CHICAGO
40 OPERATIONS
BOSTON
50 SHIPPING
CHENNAI
60 CARGO
MUMBAI
70 COURIER
DELHI
9 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
DEPTNO DNAME
LOC
---------- ------ -------------- ------------KING
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
MILLER
10 ACCOUNTING
NEW YORK
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9*
SQL>
SELECT
NVL(E.Ename, 'NOT RECRUITED OR REQUESTED') Ename,
D.Deptno,
D.Dname,
D.Loc
FROM Emp E, Dept D
WHERE E.Deptno(+) = D.Deptno
AND E.Deptno(+) = 10
ORDER BY E.Deptno
/
ENAME
DEPTNO DNAME
LOC
-------------------------- ------ -------------- ------------KING
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MILLER
NOT RECRUITED
NOT RECRUITED
NOT RECRUITED
NOT RECRUITED
NOT RECRUITED
NOT RECRUITED
OR
OR
OR
OR
OR
OR
REQUESTED
REQUESTED
REQUESTED
REQUESTED
REQUESTED
REQUESTED
10
20
30
40
50
60
70
ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
CARGO
COURIER
NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
DELHI
9 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
C.Name, O.OrdID,
I.ItemID, I.Itemtot, O.Total
FROM Customer C, Ord O, Item I
WHERE C.CustID = O.CustID
AND O.OrdID = I.OrdID
AND C.Name = 'TKB SPORT SHOP';
NAME
ORDID
ITEMID
ITEMTOT
--------------------------------------------- ---------- ---------- ---------TOTAL
---------TKB SPORT SHOP
610
2
8.4
101.4
TKB SPORT SHOP
101.4
610
35
610
58
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT
E.Ename Employee,
E.Deptno Department,
M.Ename Manager,
M.Deptno "Manager's Dept"
FROM Emp E, Dept D, Emp M
WHERE E.MGR = M.Empno AND
E.Deptno = D.Deptno;
EMPLOYEE
DEPARTMENT MANAGER
Manager's Dept
---------- ---------- ---------- -------------FORD
20 JONES
20
SCOTT
20 JONES
20
MARTIN
30 BLAKE
30
ALLEN
30 BLAKE
30
JAMES
30 BLAKE
30
TURNER
30 BLAKE
30
WARD
30 BLAKE
30
MILLER
10 CLARK
10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
BLAKE
CLARK
20 SCOTT
30 KING
10 KING
20
10
10
EMPLOYEE
DEPARTMENT MANAGER
Manager's Dept
---------- ---------- ---------- -------------JONES
20 KING
10
SMITH
20 FORD
20
13 rows selected.
SQL>
2
3
4
5
6
7
8
9
SELECT
E.Ename Employee,
Dname Department,
Loc Place,
M.Ename Manager,
Dname "Manager's Dept"
FROM Emp E, Dept D, Emp M
WHERE E.MGR = M.Empno AND
E.Deptno = D.Deptno;
EMPLOYEE
---------BLAKE
JONES
CLARK
WARD
JAMES
TURNER
ALLEN
MARTIN
MILLER
SCOTT
FORD
DEPARTMENT
-------------SALES
RESEARCH
ACCOUNTING
SALES
SALES
SALES
SALES
SALES
ACCOUNTING
RESEARCH
RESEARCH
PLACE
------------CHICAGO
DALLAS
NEW YORK
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
NEW YORK
DALLAS
DALLAS
MANAGER
---------KING
KING
KING
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
JONES
JONES
Manager's Dept
-------------SALES
RESEARCH
ACCOUNTING
SALES
SALES
SALES
SALES
SALES
ACCOUNTING
RESEARCH
RESEARCH
EMPLOYEE
---------SMITH
ADAMS
DEPARTMENT
-------------RESEARCH
RESEARCH
PLACE
------------DALLAS
DALLAS
MANAGER
---------FORD
SCOTT
Manager's Dept
-------------RESEARCH
RESEARCH
13 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT
E.Ename Employee,
DE.Dname Department,
DE.Loc Place,
M.Ename Manager,
DM.Dname "Manager's Dept"
FROM Emp E, Dept DE, Emp M, Dept DM
WHERE E.MGR = M.Empno AND
E.Deptno = DE.Deptno AND
M.Deptno = DM.Deptno
ORDER BY E.Deptno;
EMPLOYEE
DEPARTMENT
PLACE
MANAGER
Manager's Dept
---------- -------------- ------------- ---------- -------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MILLER
CLARK
JONES
SMITH
SCOTT
FORD
ADAMS
BLAKE
MARTIN
ALLEN
TURNER
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
SALES
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CLARK
KING
KING
FORD
JONES
JONES
SCOTT
KING
BLAKE
BLAKE
BLAKE
ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
ACCOUNTING
SALES
SALES
SALES
EMPLOYEE
---------JAMES
WARD
DEPARTMENT
-------------SALES
SALES
PLACE
------------CHICAGO
CHICAGO
MANAGER
---------BLAKE
BLAKE
Manager's Dept
-------------SALES
SALES
13 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
SELECT
E.Ename Employee,
E.Sal "Employee's Salary",
M.Ename Manager,
M.Sal "Manager's Salary",
Dname "Manager's Dept"
FROM Emp E, Dept D, Emp M
WHERE E.Deptno = D.Deptno AND
E.MGR = M.Empno;
EMPLOYEE
Employee's Salary
---------- ----------------BLAKE
2850
JONES
2975
CLARK
2450
WARD
1250
JAMES
950
TURNER
1500
ALLEN
1600
MARTIN
1250
MILLER
1300
SCOTT
3000
FORD
3000
MANAGER
Manager's Salary
---------- ---------------KING
5000
KING
5000
KING
5000
BLAKE
2850
BLAKE
2850
BLAKE
2850
BLAKE
2850
BLAKE
2850
CLARK
2450
JONES
2975
JONES
2975
Manager's Dept
-------------SALES
RESEARCH
ACCOUNTING
SALES
SALES
SALES
SALES
SALES
ACCOUNTING
RESEARCH
RESEARCH
EMPLOYEE
Employee's Salary
---------- ----------------SMITH
800
ADAMS
1100
MANAGER
Manager's Salary
---------- ---------------FORD
3000
SCOTT
3000
Manager's Dept
-------------RESEARCH
RESEARCH
13 rows selected.
SQL> cl scr
SQL> SELECT
2 E.Ename Employee,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5
6
7
8
9
10
EMPLOYEE
Employee's Salary
---------- ----------------BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
SCOTT
3000
MANAGER
Manager's Salary
---------- ---------------KING
5000
KING
5000
KING
5000
BLAKE
2850
BLAKE
2850
BLAKE
2850
BLAKE
2850
BLAKE
2850
JONES
2975
FORD
3000
JONES
2975
Manager's Dept
-------------ACCOUNTING
ACCOUNTING
ACCOUNTING
SALES
SALES
SALES
SALES
SALES
RESEARCH
RESEARCH
RESEARCH
EMPLOYEE
Employee's Salary
---------- ----------------ADAMS
1100
MILLER
1300
MANAGER
Manager's Salary
---------- ---------------SCOTT
3000
CLARK
2450
Manager's Dept
-------------RESEARCH
ACCOUNTING
13 rows selected.
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
4
5
6
7
8
9
10
EMPLOYEE
Employee's MANAGER
Manager's Dept
DEPTNO
-------------- ---------- --------------- --------------- ---------MILLER
ACCOUNTING CLARK
ACCOUNTING
10
CLARK
ACCOUNTING KING
ACCOUNTING
10
JONES
RESEARCH
KING
ACCOUNTING
20
BLAKE
SALES
KING
ACCOUNTING
30
ADAMS
RESEARCH
SCOTT
RESEARCH
20
SMITH
RESEARCH
FORD
RESEARCH
20
SCOTT
RESEARCH
JONES
RESEARCH
20
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
MARTIN
ALLEN
TURNER
RESEARCH
SALES
SALES
SALES
JONES
BLAKE
BLAKE
BLAKE
RESEARCH
SALES
SALES
SALES
20
30
30
30
EMPLOYEE
-------------JAMES
WARD
KING
Not Recruited
Employee's
---------SALES
SALES
ACCOUNTING
OPERATIONS
MANAGER
--------------BLAKE
BLAKE
NULL Manager
NULL Manager
Manager's Dept
DEPTNO
--------------- ---------SALES
30
SALES
30
Not Recruited
10
Not Recruited
40
15 rows selected.
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
4
5
6
7
8
9
10
11
12
EMPLOYEE
Employee's Salary EMPGRADE Manager's Salary MGRGRADE
-------------- ----------------- -------- ---------------- -------DNAME
-------------SMITH
800
1
3000
4
RESEARCH
JAMES
SALES
ADAMS
RESEARCH
950
2850
1100
3000
EMPLOYEE
Employee's Salary EMPGRADE Manager's Salary MGRGRADE
-------------- ----------------- -------- ---------------- -------DNAME
-------------MARTIN
1250
2
2850
4
SALES
WARD
SALES
1250
2850
MILLER
ACCOUNTING
1300
2450
EMPLOYEE
Employee's Salary EMPGRADE Manager's Salary MGRGRADE
-------------- ----------------- -------- ---------------- -------DNAME
-------------TURNER
1500
3
2850
4
SALES
ALLEN
SALES
1600
2850
CLARK
ACCOUNTING
2450
5000
EMPLOYEE
Employee's Salary EMPGRADE Manager's Salary MGRGRADE
-------------- ----------------- -------- ---------------- -------DNAME
-------------BLAKE
2850
4
5000
5
SALES
JONES
RESEARCH
2975
5000
FORD
RESEARCH
3000
2975
EMPLOYEE
Employee's Salary EMPGRADE Manager's Salary MGRGRADE
-------------- ----------------- -------- ---------------- -------DNAME
-------------SCOTT
3000
4
2975
4
RESEARCH
13 rows selected.
SQL> cl scr
SQL> SELECT Ename, Dept.Deptno, Dname, Loc
2 FROM Emp CROSS JOIN Dept
3 /
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------KING
10 ACCOUNTING
NEW YORK
BLAKE
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
JONES
10 ACCOUNTING
NEW YORK
MARTIN
10 ACCOUNTING
NEW YORK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
10
10
10
10
10
10
ACCOUNTING
ACCOUNTING
ACCOUNTING
ACCOUNTING
ACCOUNTING
ACCOUNTING
NEW
NEW
NEW
NEW
NEW
NEW
YORK
YORK
YORK
YORK
YORK
YORK
ENAME
DEPTNO DNAME
---------- ---------- -------------SCOTT
10 ACCOUNTING
ADAMS
10 ACCOUNTING
MILLER
10 ACCOUNTING
KING
20 RESEARCH
BLAKE
20 RESEARCH
CLARK
20 RESEARCH
JONES
20 RESEARCH
MARTIN
20 RESEARCH
ALLEN
20 RESEARCH
TURNER
20 RESEARCH
JAMES
20 RESEARCH
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
ENAME
DEPTNO DNAME
---------- ---------- -------------WARD
20 RESEARCH
FORD
20 RESEARCH
SMITH
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
MILLER
20 RESEARCH
KING
30 SALES
BLAKE
30 SALES
CLARK
30 SALES
JONES
30 SALES
MARTIN
30 SALES
LOC
------------DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------ALLEN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
FORD
30 SALES
SMITH
30 SALES
SCOTT
30 SALES
ADAMS
30 SALES
MILLER
30 SALES
KING
40 OPERATIONS
BLAKE
40 OPERATIONS
LOC
------------CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
BOSTON
BOSTON
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------CLARK
40 OPERATIONS
BOSTON
JONES
40 OPERATIONS
BOSTON
MARTIN
40 OPERATIONS
BOSTON
ALLEN
40 OPERATIONS
BOSTON
TURNER
40 OPERATIONS
BOSTON
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
40
40
40
40
40
40
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
OPERATIONS
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------MILLER
40 OPERATIONS
BOSTON
56 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Dept.Deptno, Dname, Loc
2* FROM Emp, Dept
SQL> /
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
BLAKE
10 ACCOUNTING
CLARK
10 ACCOUNTING
JONES
10 ACCOUNTING
MARTIN
10 ACCOUNTING
ALLEN
10 ACCOUNTING
TURNER
10 ACCOUNTING
JAMES
10 ACCOUNTING
WARD
10 ACCOUNTING
FORD
10 ACCOUNTING
SMITH
10 ACCOUNTING
LOC
------------NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
NEW YORK
ENAME
DEPTNO DNAME
---------- ---------- -------------SCOTT
10 ACCOUNTING
ADAMS
10 ACCOUNTING
MILLER
10 ACCOUNTING
KING
20 RESEARCH
BLAKE
20 RESEARCH
CLARK
20 RESEARCH
JONES
20 RESEARCH
MARTIN
20 RESEARCH
ALLEN
20 RESEARCH
TURNER
20 RESEARCH
JAMES
20 RESEARCH
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------WARD
20 RESEARCH
DALLAS
FORD
20 RESEARCH
DALLAS
SMITH
20 RESEARCH
DALLAS
SCOTT
20 RESEARCH
DALLAS
ADAMS
20 RESEARCH
DALLAS
MILLER
20 RESEARCH
DALLAS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
CLARK
JONES
MARTIN
30
30
30
30
30
SALES
SALES
SALES
SALES
SALES
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------ALLEN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
FORD
30 SALES
SMITH
30 SALES
SCOTT
30 SALES
ADAMS
30 SALES
MILLER
30 SALES
KING
40 OPERATIONS
BLAKE
40 OPERATIONS
LOC
------------CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
CHICAGO
BOSTON
BOSTON
ENAME
DEPTNO DNAME
---------- ---------- -------------CLARK
40 OPERATIONS
JONES
40 OPERATIONS
MARTIN
40 OPERATIONS
ALLEN
40 OPERATIONS
TURNER
40 OPERATIONS
JAMES
40 OPERATIONS
WARD
40 OPERATIONS
FORD
40 OPERATIONS
SMITH
40 OPERATIONS
SCOTT
40 OPERATIONS
ADAMS
40 OPERATIONS
LOC
------------BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
BOSTON
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------MILLER
40 OPERATIONS
BOSTON
56 rows selected.
SQL> cl scr
SQL> SELECT Ename, Dept.Deptno, Dname, Loc
2 FROM Emp CROSS JOIN Dept
3 WHERE Emp.Deptno = Dept.Deptno;
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------KING
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
MILLER
10 ACCOUNTING
NEW YORK
JONES
20 RESEARCH
DALLAS
SCOTT
20 RESEARCH
DALLAS
ADAMS
20 RESEARCH
DALLAS
SMITH
20 RESEARCH
DALLAS
FORD
20 RESEARCH
DALLAS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
BLAKE
MARTIN
ALLEN
30 SALES
30 SALES
30 SALES
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
CHICAGO
CHICAGO
CHICAGO
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Deptno, Dname, Loc
2 FROM Emp NATURAL JOIN Dept;
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
BLAKE
30 SALES
MARTIN
30 SALES
ALLEN
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, D.Deptno, Dname, Loc
2* FROM Emp NATURAL JOIN Dept
SQL> /
SELECT Ename, D.Deptno, Dname, Loc
*
ERROR at line 1:
ORA-00904: "D"."DEPTNO": invalid identifier
SQL> cl scr
SQL> SELECT Ename, Deptno, Dname, Loc
2 FROM Emp JOIN Dept
3 USING(Deptno);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
BLAKE
30 SALES
MARTIN
30 SALES
ALLEN
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
BLAKE
30 SALES
MARTIN
30 SALES
ALLEN
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Dept.Deptno, Dname, Loc
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
BLAKE
30 SALES
MARTIN
30 SALES
ALLEN
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
BLAKE
30 SALES
MARTIN
30 SALES
ALLEN
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
E.Ename Employee,
M.Ename Manager
FROM
Emp E INNER JOIN Emp M
ON(E.MGR = M.Empno)
/
EMPLOYEE
-------------FORD
SCOTT
MARTIN
ALLEN
JAMES
TURNER
WARD
MILLER
ADAMS
BLAKE
CLARK
MANAGER
--------------JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
SCOTT
KING
KING
EMPLOYEE
-------------JONES
SMITH
MANAGER
--------------KING
FORD
13 rows selected.
SQL>
2
3
4
5
ENAME
SAL
GRADE
DEPTNO DNAME
---------- ---------- ---------- ---------- -------------SMITH
800
1
20 RESEARCH
JAMES
950
1
30 SALES
ADAMS
1100
1
20 RESEARCH
MARTIN
1250
2
30 SALES
WARD
1250
2
30 SALES
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MILLER
TURNER
ALLEN
CLARK
BLAKE
JONES
1300
1500
1600
2450
2850
2975
2
3
3
4
4
4
10
30
30
10
30
20
ACCOUNTING
SALES
SALES
ACCOUNTING
SALES
RESEARCH
ENAME
SAL
GRADE
DEPTNO DNAME
---------- ---------- ---------- ---------- -------------FORD
3000
4
20 RESEARCH
SCOTT
3000
4
20 RESEARCH
KING
5000
5
10 ACCOUNTING
14 rows selected.
SQL>
2
3
4
5
6
7
8
ENAME
---------KING
KING
KING
SCOTT
FORD
JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
ENAME
SAL
GRADE
DEPTNO DNAME
---------- ---------- ---------- ---------- -------------BLAKE
2850
5
10 ACCOUNTING
CLARK
2450
5
10 ACCOUNTING
JONES
2975
5
10 ACCOUNTING
ADAMS
1100
4
20 RESEARCH
SMITH
800
4
20 RESEARCH
FORD
3000
4
20 RESEARCH
SCOTT
3000
4
20 RESEARCH
MARTIN
1250
4
30 SALES
ALLEN
1600
4
30 SALES
JAMES
950
4
30 SALES
TURNER
1500
4
30 SALES
ENAME
---------BLAKE
CLARK
ENAME
SAL
GRADE
DEPTNO DNAME
---------- ---------- ---------- ---------- -------------WARD
1250
4
30 SALES
MILLER
1300
4
10 ACCOUNTING
13 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Grade, Dept.Deptno, Dname
2 FROM Emp NATURAL JOIN Dept
3 JOIN SalGrade
4* ON Emp.Sal BETWEEN LoSal AND HiSal
SQL> /
SELECT Ename, Sal, Grade, Dept.Deptno, Dname
*
ERROR at line 1:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> Ed
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
SAL
GRADE
DEPTNO DNAME
---------- ---------- ---------- ---------- -------------SMITH
800
1
20 RESEARCH
JAMES
950
1
30 SALES
ADAMS
1100
1
20 RESEARCH
MARTIN
1250
2
30 SALES
WARD
1250
2
30 SALES
MILLER
1300
2
10 ACCOUNTING
TURNER
1500
3
30 SALES
ALLEN
1600
3
30 SALES
CLARK
2450
4
10 ACCOUNTING
BLAKE
2850
4
30 SALES
JONES
2975
4
20 RESEARCH
ENAME
SAL
GRADE
DEPTNO DNAME
---------- ---------- ---------- ---------- -------------FORD
3000
4
20 RESEARCH
SCOTT
3000
4
20 RESEARCH
KING
5000
5
10 ACCOUNTING
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Dept.Deptno, Dname, Loc
2 FROM Emp RIGHT JOIN Dept
3 ON Emp.Deptno = Dept.Deptno;
ENAME
DEPTNO DNAME
---------- ---------- -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
JONES
20 RESEARCH
SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
BLAKE
30 SALES
MARTIN
30 SALES
ALLEN
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TURNER
JAMES
WARD
30
30
30
40
SALES
SALES
SALES
OPERATIONS
CHICAGO
CHICAGO
CHICAGO
BOSTON
15 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO DNAME
---------- ---------- -------------MILLER
10 ACCOUNTING
CLARK
10 ACCOUNTING
KING
10 ACCOUNTING
ADAMS
20 RESEARCH
SCOTT
20 RESEARCH
SMITH
20 RESEARCH
FORD
20 RESEARCH
JONES
20 RESEARCH
WARD
30 SALES
JAMES
30 SALES
TURNER
30 SALES
LOC
------------NEW YORK
NEW YORK
NEW YORK
DALLAS
DALLAS
DALLAS
DALLAS
DALLAS
CHICAGO
CHICAGO
CHICAGO
ENAME
DEPTNO DNAME
---------- ---------- -------------ALLEN
30 SALES
MARTIN
30 SALES
BLAKE
30 SALES
LOC
------------CHICAGO
CHICAGO
CHICAGO
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO DNAME
LOC
---------- ---------- -------------- ------------KING
10 ACCOUNTING
NEW YORK
CLARK
10 ACCOUNTING
NEW YORK
MILLER
10 ACCOUNTING
NEW YORK
JONES
20 RESEARCH
DALLAS
SCOTT
20 RESEARCH
DALLAS
ADAMS
20 RESEARCH
DALLAS
SMITH
20 RESEARCH
DALLAS
FORD
20 RESEARCH
DALLAS
BLAKE
30 SALES
CHICAGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MARTIN
ALLEN
30 SALES
30 SALES
ENAME
DEPTNO DNAME
---------- ---------- -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
40 OPERATIONS
CHICAGO
CHICAGO
LOC
------------CHICAGO
CHICAGO
CHICAGO
BOSTON
15 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SQL>
2
3
4
5
6
7*
8
SQL>
SELECT ColumnName
FROM TableName
WHERE ColumnName = (
SELECT ColumnName
FROM TableName
WHERE ColumnName = Value
)
SELECT ColumnName
FROM TableName, (
SELECT ColumName
FROM TableName
WHERE ColumnName = Value
)
WHERE ColumnName = Value
cl scr
SQL>
2
3
4
5
6
7
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SQL>
SELECT ColumnName, (
SELECT ColumnName
FROM TableName
WHERE ColumnName = Value
)
FROM TableName
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
SELECT
SELECT ColumnName, (
SELECT ColumnName
FROM TableName
WHERE ColumnName = Value
)
FROM TableName, (
SELECT ColumnName
FROM TableName
WHERE ColumnName = Value
)
WHERE ColumnName = (
SELECT ColumnName
FROM TableName
WHERE ColumnName = (
SELECT ColumnName
FROM TableName
WHERE ColumnName = Value
)
)
cl scr
Empno FORMAT 9999
MGR FORMAT 9999
Deptno FORMAT 99
Sal FORMAT 9999
Comm FORMAT 9999
* FROM Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> (
2
SELECT *
3
FROM Emp
4 );
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
(
SELECT *
FROM Emp
ORDER BY Sal DESC
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5* )
SQL> /
ORDER BY Sal DESC
*
ERROR at line 4:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
(
SELECT *
FROM Emp
)
ORDER BY Sal DESC
/
EMPNO
----7839
7902
7788
7566
7698
7782
7499
7844
7934
7654
7521
ENAME
---------KING
FORD
SCOTT
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
MANAGER
7839 02-APR-81 2975
20
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7782 23-JAN-82 1300
10
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 22-FEB-81 1250
500
30
EMPNO
----7876
7900
7369
ENAME
---------ADAMS
JAMES
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7698 03-DEC-81
950
30
CLERK
7902 17-DEC-80
800
20
14 rows selected.
SQL> cl scr
SQL> SELECT Sal
2
3
FROM Emp
WHERE Empno = 7566;
SAL
----2975
SQL> SELECT Ename, Sal, Job
2 FROM Emp
3 WHERE Sal > 2975;
ENAME
SAL JOB
---------- ----- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
FORD
SCOTT
5000 PRESIDENT
3000 ANALYST
3000 ANALYST
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=8)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=8)
2
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=7 Bytes=126
)
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=1 Bytes=18)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
18)
2
SQL> cl scr
SQL> SELECT Job
2
3
FROM Emp
WHERE Ename = 'SMITH';
JOB
--------CLERK
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=14)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
14)
ENAME
SAL JOB
---------- ----- --------JAMES
950 CLERK
SMITH
800 CLERK
ADAMS
1100 CLERK
MILLER
1300 CLERK
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=3 Bytes=54)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=3 Bytes=
54)
SQL>
2
3
4
5
6
ENAME
SAL JOB
---------- ----- --------SMITH
800 CLERK
JAMES
950 CLERK
ADAMS
1100 CLERK
MILLER
1300 CLERK
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=3 Bytes=54)
1
0
SORT (ORDER BY) (Cost=7 Card=3 Bytes=54)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=3 Byte
s=54)
3
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL> /
no rows selected
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=3 Bytes=54)
1
0
SORT (ORDER BY) (Cost=7 Card=3 Bytes=54)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=3 Byte
s=54)
3
4
2
3
FILTER
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1
Bytes=14)
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
ENAME
SAL JOB
---------- ----- --------JAMES
950 CLERK
ADAMS
1100 CLERK
MILLER
1300 CLERK
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=3 Bytes=54)
1
0
SORT (ORDER BY) (Cost=7 Card=3 Bytes=54)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=3 Byte
s=54)
3
2
3
FROM Emp
WHERE Ename = 'TURNER';
HIREDATE
--------08-SEP-81
SQL>
2
3
4
5
6
EMPNO
---------7900
7876
7654
7934
7902
7788
7839
ENAME
---------JAMES
ADAMS
MARTIN
MILLER
FORD
SCOTT
KING
HIREDATE
SAL
--------- ---------03-DEC-81
950
12-JAN-83
1100
28-SEP-81
1250
23-JAN-82
1300
03-DEC-81
3000
09-DEC-82
3000
17-NOV-81
5000
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
EMPNO
---------7369
7521
7499
7782
7698
7566
ENAME
---------SMITH
WARD
ALLEN
CLARK
BLAKE
JONES
HIREDATE
SAL
--------- ---------17-DEC-80
800
22-FEB-81
1250
20-FEB-81
1600
09-JUN-81
2450
01-MAY-81
2850
02-APR-81
2975
6 rows selected.
SQL> cl scr
SQL>
1
2
3
4
5
R
SELECT Empno, Ename, Hiredate, Sal
FROM Emp
WHERE Hiredate < (SELECT Hiredate
FROM Emp
WHERE Ename = 'TURNER')
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
6* ORDER BY Sal
EMPNO
---------7369
7521
7499
7782
7698
7566
ENAME
---------SMITH
WARD
ALLEN
CLARK
BLAKE
JONES
HIREDATE
SAL
--------- ---------17-DEC-80
800
22-FEB-81
1250
20-FEB-81
1600
09-JUN-81
2450
01-MAY-81
2850
02-APR-81
2975
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
EMPNO
---------7900
7902
ENAME
---------JAMES
FORD
HIREDATE
SAL
--------- ---------03-DEC-81
950
03-DEC-81
3000
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
EMPNO ENAME
HIREDATE
SAL
---------- ---------- --------- ---------7900 JAMES
03-DEC-81
950
SQL> cl scr
SQL> SELECT Empno, Ename, Sal, Job
2 FROM Emp
3 WHERE Deptno = (SELECT Deptno
4
FROM Dept
5
WHERE Dname = 'SALES');
EMPNO ENAME
SAL JOB
---------- ---------- ---------- --------7698 BLAKE
2850 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7654
7499
7844
7900
7521
MARTIN
ALLEN
TURNER
JAMES
WARD
1250
1600
1500
950
1250
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
EMPNO
---------7698
7654
7499
7844
7900
7521
ENAME
SAL JOB
---------- ---------- --------BLAKE
2850 MANAGER
MARTIN
1250 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
WARD
1250 SALESMAN
6 rows selected.
SQL>
SQL>
2
3
4
EMPNO
---------7698
7654
7499
7844
7900
7521
ENAME
SAL JOB
---------- ---------- --------BLAKE
2850 MANAGER
MARTIN
1250 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
WARD
1250 SALESMAN
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=5 Bytes=370
)
1
2
0
1
es=728)
ENAME
SAL JOB
---------- ---------- --------BLAKE
2850 MANAGER
MARTIN
1250 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
WARD
1250 SALESMAN
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=6 Card=1 Bytes=52)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
52)
2
SQL> SELECT Empno, Ename, Sal, Comm, Sal + NVL( Comm, 0 ) TotSal
2 FROM Emp
3 WHERE Deptno = (SELECT Deptno
4
FROM Dept
5
WHERE Loc = 'DALLAS');
EMPNO
---------7566
7902
7369
7788
7876
ENAME
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------JONES
2975
2975
FORD
3000
3000
SMITH
800
800
SCOTT
3000
3000
ADAMS
1100
1100
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=6 Card=1 Bytes=59)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
59)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SET AUTOTRACE OFF EXPLAIN
SQL> cl scr
SQL> SELECT MAX(Sal) FROM Emp;
MAX(SAL)
---------5000
SQL> SELECT Ename, MAX(Sal) FROM Emp;
SELECT Ename, MAX(Sal) FROM Emp
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
Ename,
MAX(Sal)
FROM Emp
GROUP BY Ename
/
ENAME
MAX(SAL)
---------- ---------ADAMS
1100
ALLEN
1600
BLAKE
2850
CLARK
2450
FORD
3000
JAMES
950
JONES
2975
KING
5000
MARTIN
1250
MILLER
1300
SCOTT
3000
ENAME
MAX(SAL)
---------- ---------SMITH
800
TURNER
1500
WARD
1250
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JOB
SAL
--------- ---------PRESIDENT
5000
MANAGER
2850
MANAGER
2450
MANAGER
2975
ANALYST
3000
ANALYST
3000
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL> /
ENAME
---------MARTIN
ALLEN
TURNER
JAMES
WARD
SMITH
ADAMS
MILLER
FROM Emp)
JOB
SAL
--------- ---------SALESMAN
1250
SALESMAN
1600
SALESMAN
1500
CLERK
950
SALESMAN
1250
CLERK
800
CLERK
1100
CLERK
1300
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
SAL
--------- ---------PRESIDENT
5000
MANAGER
2850
MANAGER
2450
MANAGER
2975
SALESMAN
1250
SALESMAN
1600
SALESMAN
1500
CLERK
950
SALESMAN
1250
ANALYST
3000
CLERK
800
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL
--------- ---------ANALYST
3000
CLERK
1100
CLERK
1300
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal, Job
2 FROM Emp
3 WHERE Sal = (
4
SELECT MAX(Sal)
5
FROM Emp
6
WHERE Deptno = 10
7
);
ENAME
DEPTNO
SAL JOB
---------- ---------- ---------- --------KING
10
5000 PRESIDENT
SQL> cl scr
SQL> SELECT
2
3
4
MIN(Sal)
FROM Emp
WHERE Deptno = 20;
MIN(SAL)
---------800
SQL>
2
3
4
5
6
7
DEPTNO
MIN(SAL)
---------- ---------10
1300
30
950
SQL> cl scr
SQL> SELECT AVG(Sal)
2 FROM Emp
3 GROUP BY Job;
AVG(SAL)
---------3000
1037.5
2758.33333
5000
1400
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3*
SQL>
SELECT MAX(AVG(Sal))
FROM Emp
GROUP BY Job
/
MAX(AVG(SAL))
------------5000
SQL> ED
Wrote file afiedt.buf
1 SELECT Job, MAX(AVG(Sal))
2 FROM Emp
3* GROUP BY Job
SQL> /
SELECT Job, MAX(AVG(Sal))
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL>
2
3
4
5
6
7
JOB
AVG(SAL)
--------- ---------CLERK
1037.5
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
JOB
AVG(SAL)
--------- ---------PRESIDENT
5000
SQL> cl scr
SQL> COLUMN Empno FORMAT 9999
SQL> COLUMN MGR FORMAT 9999
SQL> COLUMN Sal FORMAT 9999
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
FORD
SCOTT
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
MANAGER
7839 02-APR-81 2975
20
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7782 23-JAN-82 1300
10
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 22-FEB-81 1250
500
30
EMPNO
----7876
7900
7369
ENAME
---------ADAMS
JAMES
SMITH
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------CLERK
7788 12-JAN-83 1100
20
CLERK
7698 03-DEC-81
950
30
CLERK
7902 17-DEC-80
800
20
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
EMPNO
----7698
7782
7566
7499
7844
7934
SELECT *
FROM Emp
WHERE
Sal BETWEEN
(
SELECT Sal
FROM Emp
WHERE Ename = 'MILLER'
) AND
(
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
);
ENAME
---------BLAKE
CLARK
JONES
ALLEN
TURNER
MILLER
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7782 23-JAN-82 1300
10
6 rows selected.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15*
SQL>
EMPNO
----7698
7782
7499
7844
SELECT *
FROM Emp
WHERE
Sal BETWEEN
(
SELECT Sal
FROM Emp
WHERE Ename = 'MILLER'
) AND
(
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
) AND
Ename NOT IN('MILLER', 'JONES')
/
ENAME
---------BLAKE
CLARK
ALLEN
TURNER
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14*
SQL>
EMPNO
----7698
7782
7499
7844
SELECT *
FROM Emp
WHERE
Sal >= (
SELECT Sal
FROM Emp
WHERE Ename = 'MILLER'
) AND
Sal <= (
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
) AND
Ename NOT IN('MILLER', 'JONES')
/
ENAME
---------BLAKE
CLARK
ALLEN
TURNER
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
SQL> ED
Wrote file afiedt.buf
1
2
3
SELECT *
FROM Emp
WHERE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19*
SQL>
EMPNO
----7698
7499
7844
Sal >= (
SELECT Sal
FROM Emp
WHERE Ename = 'MILLER'
) AND
Sal <= (
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
) AND
Ename NOT IN('MILLER', 'JONES') AND
Deptno = (
SELECT Deptno
FROM Dept
WHERE Dname = 'SALES'
)
/
ENAME
---------BLAKE
ALLEN
TURNER
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------MANAGER
7839 01-MAY-81 2850
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24*
SQL>
SELECT *
FROM Emp
WHERE
Sal >= (
SELECT Sal
FROM Emp
WHERE Ename = 'MILLER'
) AND
Sal <= (
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
) AND
Ename NOT IN('MILLER', 'JONES') AND
Deptno = (
SELECT Deptno
FROM Dept
WHERE Dname = 'SALES'
) AND
Job = (
SELECT Job
FROM Emp
WHERE Ename = 'ALLEN'
)
/
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81 1600
300
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7844 TURNER
SALESMAN
7698 08-SEP-81
1500
30
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25*
SQL>
SELECT *
FROM Emp
WHERE
Sal >= (
SELECT Sal
FROM Emp
WHERE Ename = 'MILLER'
) AND
Sal <= (
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
) AND
Ename NOT IN('MILLER', 'JONES') AND
Deptno = (
SELECT Deptno
FROM Dept
WHERE Dname = 'SALES'
) AND
Job = (
SELECT Job
FROM Emp
WHERE Ename = 'ALLEN'
) AND
Ename <> 'ALLEN'
/
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7844 TURNER
SALESMAN
7698 08-SEP-81 1500
0
30
SQL> cl scr
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7788 SCOTT
7876 ADAMS
7934 MILLER
ANALYST
CLERK
CLERK
7566 09-DEC-82
7788 12-JAN-83
7782 23-JAN-82
3000
1100
1300
20
20
10
14 rows selected.
SQL> SELECT *
2 FROM Emp
3 WHERE Sal IN
4
(
5
SELECT Sal
6
FROM Emp
7
WHERE Ename = 'WARD'
8
,
9
SELECT Sal
10
FROM Emp
11
WHERE Ename = 'FORD'
12
);
,
*
ERROR at line 8:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15*
SQL>
EMPNO
----7654
7521
7902
7788
SELECT *
FROM Emp
WHERE Sal IN
(
(
SELECT Sal
FROM Emp
WHERE Ename = 'WARD'
),
(
SELECT Sal
FROM Emp
WHERE Ename = 'FORD'
)
)
/
ENAME
---------MARTIN
WARD
FORD
SCOTT
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
SQL> cl scr
SQL> Select MIN(Sal)
2
FROM Emp
3
GROUP BY Deptno;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MIN(SAL)
---------1300
800
950
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno
2 FROM Emp
3 WHERE Sal IN(Select MIN(Sal)
4
FROM Emp
5
GROUP BY Deptno);
ENAME
SAL
DEPTNO
---------- ----- ---------MILLER
1300
10
SMITH
800
20
JAMES
950
30
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1234, 'SAMPLE01', 20, 1300);
1 row created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1235, 'SAMPLE02', 20, 950);
1 row created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1236, 'SAMPLE03', 30, 1300);
1 row created.
SQL> SELECT Ename, Sal, Deptno
2 FROM Emp
3 WHERE Sal IN(Select MIN(Sal)
4
FROM Emp
5
GROUP BY Deptno);
ENAME
SAL
DEPTNO
---------- ----- ---------SAMPLE03
1300
30
SAMPLE01
1300
20
MILLER
1300
10
SMITH
800
20
SAMPLE02
950
20
JAMES
950
30
6 rows selected.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5*
SQL>
ENAME
SAL
DEPTNO
---------- ----- ---------KING
5000
10
SCOTT
3000
20
FORD
3000
20
BLAKE
2850
30
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
SAL
DEPTNO
---------- ----- ---------SCOTT
3000
20
FORD
3000
20
SAMPLE03
1300
30
SAMPLE01
1300
20
MILLER
1300
10
JONES
2975
20
KING
5000
10
ALLEN
1600
30
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
SAL
DEPTNO
---------- ----- ---------SCOTT
3000
20
FORD
3000
20
SMITH
800
20
CLARK
2450
10
KING
5000
10
WARD
1250
30
MARTIN
1250
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPLE02
JAMES
950
950
20
30
9 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
SAL
DEPTNO
---------- ----- ---------SCOTT
3000
20
FORD
3000
20
KING
5000
10
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT HireDate
2
3
FROM Emp
WHERE Deptno = 20;
HIREDATE
--------02-APR-81
03-DEC-81
17-DEC-80
09-DEC-82
12-JAN-83
SQL> SELECT Sal
2
3
4
5
FROM Emp
WHERE HireDate IN(SELECT HireDate
FROM Emp
WHERE Deptno = 20);
SAL
---------2975
3000
950
800
3000
1100
6 rows selected.
SQL> SELECT Empno, Ename, Job, Sal, Deptno, HireDate
2 FROM Emp
3 WHERE Sal IN(SELECT Sal
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
6
7
8
FROM Emp
WHERE HireDate IN(SELECT HireDate
FROM Emp
WHERE Deptno = 20)
);
EMPNO
---------7566
7900
7902
7369
7788
7876
ENAME
---------JONES
JAMES
FORD
SMITH
SCOTT
ADAMS
JOB
SAL
DEPTNO HIREDATE
--------- ---------- ---------- --------MANAGER
2975
20 02-APR-81
CLERK
950
30 03-DEC-81
ANALYST
3000
20 03-DEC-81
CLERK
800
20 17-DEC-80
ANALYST
3000
20 09-DEC-82
CLERK
1100
20 12-JAN-83
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15*
SQL>
EMPNO
---------7566
7900
7902
7369
7788
7876
ENAME
---------JONES
JAMES
FORD
SMITH
SCOTT
ADAMS
JOB
SAL
DEPTNO HIREDATE
--------- ---------- ---------- --------MANAGER
2975
20 02-APR-81
CLERK
950
30 03-DEC-81
ANALYST
3000
20 03-DEC-81
CLERK
800
20 17-DEC-80
ANALYST
3000
20 09-DEC-82
CLERK
1100
20 12-JAN-83
6 rows selected.
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
cl scr
SQL> SELECT *
2 FROM Emp
3 WHERE Sal >ANY(1100, 2750, 950);
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7521
7902
7788
7876
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
WARD
FORD
SCOTT
ADAMS
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7934 MILLER
CLERK
7782 23-JAN-82 1300
10
12 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7521
7902
7788
7876
SELECT *
FROM Emp
WHERE Sal > 1100 OR Sal > 2750 OR Sal > 950
/
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
WARD
FORD
SCOTT
ADAMS
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7934 MILLER
CLERK
7782 23-JAN-82 1300
10
12 rows selected.
SQL> cl scr
SQL> SELECT *
2 FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5
6
7
8
SQL>
2
3
SAL
----2850
1250
1600
1500
950
1250
6 rows selected.
SQL> SELECT *
2 FROM Emp
3 WHERE Sal >ANY(
4
5
6
7
EMPNO
----7839
7902
7788
7566
7698
7782
7499
7844
7934
7654
7521
ENAME
---------KING
FORD
SCOTT
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
SELECT Sal
FROM Emp
WHERE Deptno = 30
);
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
MANAGER
7839 02-APR-81 2975
20
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7782 23-JAN-82 1300
10
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 22-FEB-81 1250
500
30
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7876 ADAMS
CLERK
7788 12-JAN-83 1100
20
12 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
SELECT *
FROM Emp
WHERE Sal >(
SELECT MIN(Sal)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5
6
7*
SQL> /
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7521
7902
7788
7876
FROM Emp
WHERE Deptno = 30
)
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
WARD
FORD
SCOTT
ADAMS
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7934 MILLER
CLERK
7782 23-JAN-82 1300
10
12 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
EMPNO
----7839
7902
7788
7566
7698
7782
7499
7844
7934
7654
7521
SELECT *
FROM Emp
WHERE Sal >SOME(
SELECT Sal
FROM Emp
WHERE Deptno = 30
)
/
ENAME
---------KING
FORD
SCOTT
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ----- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
MANAGER
7839 02-APR-81 2975
20
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7782 23-JAN-82 1300
10
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 22-FEB-81 1250
500
30
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- --------- ----- --------- ----- ----- ---------7876 ADAMS
CLERK
7788 12-JAN-83 1100
20
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
12 rows selected.
SQL> cl scr
SQL> SELECT Sal
2
3
FROM Emp
WHERE Job = 'CLERK';
SAL
----950
800
1100
1300
SQL> SELECT Empno, Ename, Job
2 FROM Emp
3 WHERE Sal < ANY(SELECT Sal
4
FROM Emp
5
WHERE Job = 'CLERK');
EMPNO
----7369
7900
7876
7654
7521
ENAME
---------SMITH
JAMES
ADAMS
MARTIN
WARD
JOB
--------CLERK
CLERK
CLERK
SALESMAN
SALESMAN
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
EMPNO
----7369
7900
7876
7654
7521
SQL>
2
3
4
5
6
JOB
SAL
--------- ----CLERK
800
CLERK
950
CLERK
1100
SALESMAN
1250
SALESMAN
1250
EMPNO ENAME
JOB
SAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
----7654
7521
7844
7499
7782
7698
7566
---------MARTIN
WARD
TURNER
ALLEN
CLARK
BLAKE
JONES
--------- ----SALESMAN
1250
SALESMAN
1250
SALESMAN
1500
SALESMAN
1600
MANAGER
2450
MANAGER
2850
MANAGER
2975
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
EMPNO
----7654
7521
JOB
SAL
--------- ----SALESMAN
1250
SALESMAN
1250
SQL> cl scr
SQL> SELECT DISTINCT MGR
2
FROM Emp;
MGR
----7566
7698
7782
7788
7839
7902
7 rows selected.
SQL> SELECT Sal
2
3
4
FROM Emp
WHERE MGR IN(SELECT DISTINCT MGR
FROM Emp);
SAL
----2975
2450
2850
1250
950
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1500
1600
1250
3000
3000
800
SAL
----1100
1300
13 rows selected.
SQL> SELECT Empno, Ename, Job, Sal
2 FROM Emp
3 WHERE Sal < ANY(SELECT Sal
4
FROM Emp
5
WHERE MGR IN(SELECT DISTINCT MGR
6
FROM Emp)
7
);
EMPNO
----7698
7782
7566
7654
7499
7844
7900
7521
7369
7876
7934
ENAME
---------BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
SMITH
ADAMS
MILLER
JOB
SAL
--------- ----MANAGER
2850
MANAGER
2450
MANAGER
2975
SALESMAN
1250
SALESMAN
1600
SALESMAN
1500
CLERK
950
SALESMAN
1250
CLERK
800
CLERK
1100
CLERK
1300
11 rows selected.
SQL> SELECT Sal
2
3
4
FROM Emp
WHERE Empno IN(SELECT DISTINCT MGR
FROM Emp);
SAL
----2975
2850
2450
3000
5000
3000
6 rows selected.
SQL> SELECT Empno, Ename, Job, Sal
2 FROM Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5
6
7
EMPNO
----7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
7788
ENAME
---------BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
JOB
SAL
--------- ----MANAGER
2850
MANAGER
2450
MANAGER
2975
SALESMAN
1250
SALESMAN
1600
SALESMAN
1500
CLERK
950
SALESMAN
1250
ANALYST
3000
CLERK
800
ANALYST
3000
EMPNO
----7876
7934
ENAME
---------ADAMS
MILLER
JOB
SAL
--------- ----CLERK
1100
CLERK
1300
13 rows selected.
SQL> cl scr
SQL> SELECT Empno, Ename, Job, Sal, Deptno
2 FROM Emp
3 WHERE Sal <ANY (SELECT Sal
4
FROM Emp
5
WHERE HireDate IN(SELECT HireDate
6
FROM Emp
7
WHERE Deptno = 20);
WHERE Deptno = 20)
*
ERROR at line 7:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
EMPNO ENAME
JOB
SAL
DEPTNO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
----7698
7782
7566
7654
7499
7844
7900
7521
7369
7876
7934
---------BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
SMITH
ADAMS
MILLER
11 rows selected.
SQL> cl scr
SQL> SELECT Empno, Ename, Job
2 FROM Emp
3 WHERE Sal >ANY(SELECT Sal
4
FROM Emp
5
WHERE Job = 'CLERK');
EMPNO
----7839
7902
7788
7566
7698
7782
7499
7844
7934
7654
7521
ENAME
---------KING
FORD
SCOTT
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
JOB
--------PRESIDENT
ANALYST
ANALYST
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
CLERK
SALESMAN
SALESMAN
EMPNO
----7876
7900
ENAME
---------ADAMS
JAMES
JOB
--------CLERK
CLERK
13 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
EMPNO ENAME
JOB
----- ---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7788
EMPNO
----7876
7934
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SCOTT
PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
ANALYST
ENAME
---------ADAMS
MILLER
JOB
--------CLERK
CLERK
13 rows selected.
SQL> cl scr
SQL> SELECT Empno, Ename, Job, Sal
2 FROM Emp
3 WHERE Sal >ALL(SELECT AVG(Sal)
4
FROM Emp
5
GROUP BY Deptno);
EMPNO
----7839
7566
7902
7788
ENAME
---------KING
JONES
FORD
SCOTT
JOB
SAL
--------- ----PRESIDENT 5000
MANAGER
2975
ANALYST
3000
ANALYST
3000
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
EMPNO
----7839
7566
7902
7788
JOB
SAL
--------- ----PRESIDENT 5000
MANAGER
2975
ANALYST
3000
ANALYST
3000
EMPNO
----7654
7844
7900
7521
7369
7876
7934
JOB
SAL
---------- ----MARTIN
1250
TURNER
1500
JAMES
950
WARD
1250
SMITH
800
ADAMS
1100
MILLER
1300
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
EMPNO
----7654
7844
7900
7521
7369
7876
7934
7 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno, HireDate
2 FROM Emp
3 WHERE Sal > (
4
SELECT MAX(Sal)
5
FROM Emp
6
WHERE Deptno = 30
7
) AND
8
Deptno = (
9
SELECT Deptno
10
FROM Dept
11
WHERE Dname = 'RESEARCH'
12
);
ENAME
SAL
DEPTNO HIREDATE
---------- ----- ---------- --------JONES
2975
20 02-APR-81
FORD
3000
20 03-DEC-81
SCOTT
3000
20 09-DEC-82
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FROM Item
WHERE OrdID = 605;
PRODID
QTY
---------- ---------100861
100
100870
500
100890
5
101860
50
101863
100
102130
10
6 rows selected.
SQL> SELECT OrdID, ProdID, Qty
2 FROM Item;
ORDID
PRODID
QTY
---------- ---------- ---------610
100890
1
611
100861
1
612
100860
100
601
200376
1
602
100870
20
604
100890
3
604
100861
2
604
100860
10
603
100860
4
610
100860
1
610
100870
3
ORDID
PRODID
QTY
---------- ---------- ---------613
200376
200
614
100860
444
614
100870
1000
612
100861
20
612
101863
150
620
100860
10
620
200376
1000
620
102130
500
613
100871
100
613
101860
200
613
200380
150
ORDID
PRODID
QTY
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FROM Item;
ORDID
---------601
602
603
604
605
606
607
608
609
610
611
ORDID
---------612
613
614
615
616
617
618
619
620
621
21 rows selected.
SQL> SELECT OrdID, COUNT(*) ItemCnt
2 FROM Item
3 GROUP BY OrdID;
ORDID
ITEMCNT
---------- ---------601
1
602
1
603
1
604
3
605
6
606
1
607
1
608
2
609
3
610
3
611
1
ORDID
ITEMCNT
---------- ---------612
4
613
4
614
3
615
3
616
5
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
617
618
619
620
621
10
3
4
3
2
21 rows selected.
SQL> cl scr
SQL> SELECT ProdId, Qty
2
3
FROM Item
WHERE OrdID = 605;
PRODID
QTY
---------- ---------100861
100
100870
500
100890
5
101860
50
101863
100
102130
10
6 rows selected.
SQL>
2
3
4
ORDID
PRODID
QTY
---------- ---------- ---------610
100890
1
611
100861
1
602
100870
20
604
100890
3
604
100861
2
610
100870
3
614
100870
1000
612
100861
20
612
101863
150
620
102130
500
613
101860
200
ORDID
PRODID
QTY
---------- ---------- ---------619
102130
100
617
100861
100
616
100861
10
616
100870
50
616
100890
2
616
102130
10
615
100861
4
615
100870
100
617
100870
500
617
100890
500
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
617
101860
100
ORDID
PRODID
QTY
---------- ---------- ---------617
101863
200
617
102130
100
609
100870
5
609
100890
1
618
100861
50
618
100870
10
621
100861
10
621
100870
100
608
101860
1
609
100861
1
606
102130
1
33 rows selected.
SQL>
2
3
4
5
6
ORDID
PRODID
QTY
---------- ---------- ---------617
100861
100
617
100870
500
616
102130
10
SQL>
2
3
4
5
6
7
8
9
10
ORDID
PRODID
QTY
---------- ---------- ---------616
100861
10
621
100861
10
618
100861
50
617
100861
100
618
100870
10
616
100870
50
609
100870
5
617
100870
500
615
100870
100
621
100870
100
617
100890
500
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ORDID
PRODID
QTY
---------- ---------- ---------617
101860
100
616
102130
10
620
102130
500
619
102130
100
617
102130
100
16 rows selected.
SQL> cl scr
SQL> SELECT OrdID, ProdID, Qty
2 FROM Item
3 WHERE (ProdID, Qty) IN(100861, 100);
WHERE (ProdID, Qty) IN(100861, 100)
*
ERROR at line 3:
ORA-00920: invalid relational operator
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp
3 WHERE (Deptno, Sal) IN (SELECT Deptno, MAX(Sal)
4
FROM Emp
5
GROUP BY Deptno);
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
SCOTT
20
3000
FORD
20
3000
BLAKE
30
2850
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp
3 WHERE Deptno IN (SELECT Deptno
4
FROM Emp
5
GROUP BY Deptno) AND
6
Sal IN (SELECT MAX(Sal)
7
FROM Emp
8
GROUP BY Deptno);
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
SCOTT
20
3000
FORD
20
3000
BLAKE
30
2850
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1234, 'SAMPLE01', 10, 3000);
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JAMES
WARD
FORD
SMITH
7900
7521
7902
7369
7698
7698
7566
7902
ENAME
EMPNO
MGR
---------- ---------- ---------SCOTT
7788
7566
ADAMS
7876
7788
MILLER
7934
7782
14 rows selected.
SQL> SELECT E.Ename
2 FROM Emp E
3 WHERE E.Empno IN(SELECT
4
M.Mgr
FROM Emp M);
ENAME
---------JONES
BLAKE
CLARK
SCOTT
KING
FORD
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT E.Ename
FROM Emp E
WHERE E.Empno NOT IN(SELECT
FROM Emp M)
/
M.Mgr
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
SELECT E.Ename
FROM Emp E
WHERE E.Empno NOT IN(SELECT
FROM Emp M)
/
NVL(M.Mgr, 0)
ENAME
---------SMITH
ALLEN
WARD
MARTIN
TURNER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
JAMES
MILLER
8 rows selected.
SQL> cl scr
SQL> SELECT Ename, Sal, Comm
2 FROM Emp
3 WHERE Comm IN(SELECT Comm
4
FROM Emp);
ENAME
SAL
COMM
---------- ---------- ---------MARTIN
1250
1400
ALLEN
1600
300
TURNER
1500
0
WARD
1250
500
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
no rows selected
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal, HireDate
2 FROM Emp;
ENAME
DEPTNO
SAL HIREDATE
---------- ---------- ---------- --------KING
10
5000 17-NOV-81
BLAKE
30
2850 01-MAY-81
CLARK
10
2450 09-JUN-81
JONES
20
2975 02-APR-81
MARTIN
30
1250 28-SEP-81
ALLEN
30
1600 20-FEB-81
TURNER
30
1500 08-SEP-81
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JAMES
WARD
FORD
SMITH
30
30
20
20
950
1250
3000
800
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
ENAME
DEPTNO
SAL HIREDATE
---------- ---------- ---------- --------SCOTT
20
3000 09-DEC-82
ADAMS
20
1100 12-JAN-83
MILLER
10
1300 23-JAN-82
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT *
2 FROM (
3
SELECT Ename, Deptno, Sal, HireDate
4
FROM Emp
5* )
SQL> /
ENAME
DEPTNO
SAL HIREDATE
---------- ---------- ---------- --------KING
10
5000 17-NOV-81
BLAKE
30
2850 01-MAY-81
CLARK
10
2450 09-JUN-81
JONES
20
2975 02-APR-81
MARTIN
30
1250 28-SEP-81
ALLEN
30
1600 20-FEB-81
TURNER
30
1500 08-SEP-81
JAMES
30
950 03-DEC-81
WARD
30
1250 22-FEB-81
FORD
20
3000 03-DEC-81
SMITH
20
800 17-DEC-80
ENAME
DEPTNO
SAL HIREDATE
---------- ---------- ---------- --------SCOTT
20
3000 09-DEC-82
ADAMS
20
1100 12-JAN-83
MILLER
10
1300 23-JAN-82
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Sal, Sal * 12 AnnSal, HireDate
2 FROM (
3
SELECT Ename, Deptno, Sal, HireDate
4
FROM Emp
5* )
SQL> /
ENAME
SAL
ANNSAL HIREDATE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp;
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
BLAKE
30
2850
CLARK
10
2450
JONES
20
2975
MARTIN
30
1250
ALLEN
30
1600
TURNER
30
1500
JAMES
30
950
WARD
30
1250
FORD
20
3000
SMITH
20
800
ENAME
DEPTNO
SAL
---------- ---------- ---------SCOTT
20
3000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
MILLER
20
10
1100
1300
14 rows selected.
SQL> SELECT Deptno, AVG(Sal) SalAvg
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SALAVG
---------- ---------10 2916.66667
20
2175
30 1566.66667
SQL> SELECT Ename, E.Deptno, Sal, AvgSal
2 FROM Emp E, (
3
SELECT Deptno, AVG(Sal) AvgSal
4
FROM Emp
5
GROUP BY Deptno
6
) E1
7 WHERE E.Deptno = E1.Deptno;
ENAME
DEPTNO
SAL
AVGSAL
---------- ---------- ---------- ---------KING
10
5000 2916.66667
BLAKE
30
2850 1566.66667
CLARK
10
2450 2916.66667
JONES
20
2975
2175
MARTIN
30
1250 1566.66667
ALLEN
30
1600 1566.66667
TURNER
30
1500 1566.66667
JAMES
30
950 1566.66667
WARD
30
1250 1566.66667
FORD
20
3000
2175
SMITH
20
800
2175
ENAME
DEPTNO
SAL
AVGSAL
---------- ---------- ---------- ---------SCOTT
20
3000
2175
ADAMS
20
1100
2175
MILLER
10
1300 2916.66667
14 rows selected.
SQL>
2
3
4
5
6
ENAME
SAL
DEPTNO
SALAVG
---------- ---------- ---------- ---------KING
5000
10 2916.66667
BLAKE
2850
30 1566.66667
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
ALLEN
FORD
SCOTT
2975
1600
3000
3000
20
2175
30 1566.66667
20
2175
20
2175
6 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
ENAME
SAL
DEPTNO DEPTAVGSAL DIFFSALAVG
---------- ---------- ---------- ---------- ---------KING
5000
10
2916.67
2083
CLARK
2450
10
2916.67
-467
MILLER
1300
10
2916.67
-1617
JONES
2975
20
2175
800
FORD
3000
20
2175
825
SMITH
800
20
2175
-1375
SCOTT
3000
20
2175
825
ADAMS
1100
20
2175
-1075
BLAKE
2850
30
1566.67
1283
MARTIN
1250
30
1566.67
-317
ALLEN
1600
30
1566.67
33
ENAME
SAL
DEPTNO DEPTAVGSAL DIFFSALAVG
---------- ---------- ---------- ---------- ---------TURNER
1500
30
1566.67
-67
JAMES
950
30
1566.67
-617
WARD
1250
30
1566.67
-317
14 rows selected.
SQL>
2
3
4
5
6
ENAME
SAL
DEPTNO
SALSUM
---------- ---------- ---------- ---------KING
5000
10
8750
CLARK
2450
10
8750
MILLER
1300
10
8750
JONES
2975
20
10875
FORD
3000
20
10875
SMITH
800
20
10875
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
ADAMS
BLAKE
MARTIN
ALLEN
3000
1100
2850
1250
1600
20
20
30
30
30
10875
10875
9400
9400
9400
ENAME
SAL
DEPTNO
SALSUM
---------- ---------- ---------- ---------TURNER
1500
30
9400
JAMES
950
30
9400
WARD
1250
30
9400
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
DEPTNO
---------20
30
SQL>
2
3
4
5
DNAME
STAFF
-------------- ---------RESEARCH
5
SALES
6
DEPTNO
---------20
30
DNAME
STAFF
-------------- ---------RESEARCH
5
SALES
6
SQL> cl scr
SQL>
2
3
4
5
6
DEPTNO
SUM(SAL)
Salary%
---------- ---------- ---------10
8750 30.1464255
20
10875 37.4677003
30
9400 32.3858742
SQL> SELECT Job, SUM(Sal),
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
JOB
SUM(SAL)
Salary%
--------- ---------- ---------CLERK
4150
14.3
ANALYST
6000
20.67
MANAGER
8275
28.51
SALESMAN
5600
19.29
PRESIDENT
5000
17.23
SQL> cl scr
SQL> SELECT Ename, Sal, SUM(Sal)
2 FROM Emp
3 GROUP BY Ename, Sal;
ENAME
SAL
SUM(SAL)
---------- ---------- ---------FORD
3000
3000
KING
5000
5000
WARD
1250
1250
ADAMS
1100
1100
ALLEN
1600
1600
BLAKE
2850
2850
CLARK
2450
2450
JAMES
950
950
JONES
2975
2975
SCOTT
3000
3000
SMITH
800
800
ENAME
SAL
SUM(SAL)
---------- ---------- ---------MARTIN
1250
1250
MILLER
1300
1300
TURNER
1500
1500
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
SAL (SUM(SAL)/ORGSAL)*100
---------- ---------- --------------------FORD
3000
10.3359173
KING
5000
17.2265289
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
WARD
ADAMS
ALLEN
BLAKE
CLARK
JAMES
JONES
SCOTT
SMITH
1250
1100
1600
2850
2450
950
2975
3000
800
4.30663221
3.78983635
5.51248923
9.81912145
8.44099914
3.27304048
10.2497847
10.3359173
2.75624462
ENAME
SAL (SUM(SAL)/ORGSAL)*100
---------- ---------- --------------------MARTIN
1250
4.30663221
MILLER
1300
4.4788975
TURNER
1500
5.16795866
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
ENAME
SAL %Share
---------- ---------- -----------------------------------------------FORD
3000 10.33 % Share
KING
5000 17.22 % Share
WARD
1250 4.3 % Share
ADAMS
1100 3.78 % Share
ALLEN
1600 5.51 % Share
BLAKE
2850 9.81 % Share
CLARK
2450 8.44 % Share
JAMES
950 3.27 % Share
JONES
2975 10.24 % Share
SCOTT
3000 10.33 % Share
SMITH
800 2.75 % Share
ENAME
SAL %Share
---------- ---------- -----------------------------------------------MARTIN
1250 4.3 % Share
MILLER
1300 4.47 % Share
TURNER
1500 5.16 % Share
14 rows selected.
SQL> cl scr
SQL> SELECT TO_CHAR(HireDate, 'YYYY') Year,
2 SUM(Sal),
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5
6
YEAR
SUM(SAL)
Salary%
---- ---------- ---------1980
800
2.76
1981
22825
78.64
1982
4300
14.81
1983
1100
3.79
SQL> SELECT
2 TO_CHAR(HireDate, 'YYYY') Year,
3 TO_CHAR(HireDate, 'Month') "Month",
4 SUM(Sal),
5 ROUND(SUM(Sal)/Tot_Sal * 100, 2) "Salary%"
6 FROM Emp, (SELECT SUM(Sal) Tot_Sal
7 FROM Emp)
8 WHERE TO_CHAR(HireDate, 'YYYY') = &GiveYear
9 GROUP BY TO_CHAR(HireDate, 'YYYY'), TO_CHAR(HireDate, 'Month'), Tot_Sal;
Enter value for giveyear: 1981
old
8: WHERE TO_CHAR(HireDate, 'YYYY') = &GiveYear
new
8: WHERE TO_CHAR(HireDate, 'YYYY') = 1981
YEAR
---1981
1981
1981
1981
1981
1981
1981
Month
SUM(SAL)
Salary%
--------- ---------- ---------April
2975
10.25
December
3950
13.61
February
2850
9.82
June
2450
8.44
May
2850
9.82
November
5000
17.23
September
2750
9.47
7 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
EMPCOUNT DEPTCOUNT
GRADECNT
---------- ---------- ---------14
4
5
SQL>
2
3
4
SELECT
E.EmpCount,
D.DeptCount,
S.GradeCnt,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5
6
7
8
9
10
11
12
EMPCOUNT DEPTCOUNT
GRADECNT TOTALRECCNT
---------- ---------- ---------- ----------14
4
5
23
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
SELECT
E.EmpCount,
D.DeptCount,
S.GradeCnt,
E.EmpCount + D.DeptCount + S.GradeCnt TotalRecCnt,
GREATEST(E.EmpCount, D.DeptCount, S.GradeCnt) HighRecinTab,
LEAST(E.EmpCount, D.DeptCount, S.GradeCnt) LowRecinTab
FROM
(SELECT COUNT(*) EmpCount
FROM Emp) E,
(SELECT COUNT(*) DeptCount
FROM Dept) D,
(SELECT COUNT(*) GradeCnt
FROM SalGrade) S;
EMPCOUNT DEPTCOUNT
GRADECNT TOTALRECCNT HIGHRECINTAB LOWRECINTAB
---------- ---------- ---------- ----------- ------------ ----------14
4
5
23
14
4
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
Department Number
----------------10
20
30
%Employees
---------21.4285714
35.7142857
42.8571429
%Salary
---------30.1464255
37.4677003
32.3858742
SQL> cl scr
SQL> SELECT Ename, Sal FROM Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> SELECT SUM(Sal) FROM Emp;
SUM(SAL)
---------29025
SQL> SELECT Ename, Sal, (SELECT SUM(Sal) FROM Emp) OrgSal FROM Emp;
ENAME
SAL
ORGSAL
---------- ---------- ---------KING
5000
29025
BLAKE
2850
29025
CLARK
2450
29025
JONES
2975
29025
MARTIN
1250
29025
ALLEN
1600
29025
TURNER
1500
29025
JAMES
950
29025
WARD
1250
29025
FORD
3000
29025
SMITH
800
29025
ENAME
SAL
ORGSAL
---------- ---------- ---------SCOTT
3000
29025
ADAMS
1100
29025
MILLER
1300
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
SAL
ORGSAL
ORGAVG
---------- ---------- ---------- ---------KING
5000
29025 2073.21429
BLAKE
2850
29025 2073.21429
CLARK
2450
29025 2073.21429
JONES
2975
29025 2073.21429
MARTIN
1250
29025 2073.21429
ALLEN
1600
29025 2073.21429
TURNER
1500
29025 2073.21429
JAMES
950
29025 2073.21429
WARD
1250
29025 2073.21429
FORD
3000
29025 2073.21429
SMITH
800
29025 2073.21429
ENAME
SAL
ORGSAL
ORGAVG
---------- ---------- ---------- ---------SCOTT
3000
29025 2073.21429
ADAMS
1100
29025 2073.21429
MILLER
1300
29025 2073.21429
14 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp
3 WHERE Sal > (
4
SELECT AVG(Sal)
5
FROM Emp
6
WHERE Deptno = Deptno
7
)
8
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
BLAKE
30
2850
JONES
20
2975
ALLEN
30
1600
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
SCOTT
20
20
3000
3000
6 rows selected.
SQL> SELECT Deptno, AVG(Sal) SalAvg
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SALAVG
---------- ---------10 2916.66667
20
2175
30 1566.66667
SQL>
2
3
4
5
6
7
8
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
SCOTT
20
3000
FORD
20
3000
JONES
20
2975
ALLEN
30
1600
BLAKE
30
2850
6 rows selected.
SQL> SELECT Ename, Deptno, Sal
2 FROM Emp OE
3 WHERE OE.Sal > (
4
SELECT AVG(Sal)
5
FROM Emp IE
6
WHERE IE.Deptno = OE.Deptno
7
);
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
BLAKE
30
2850
JONES
20
2975
ALLEN
30
1600
FORD
20
3000
SCOTT
20
3000
6 rows selected.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5
6
7
8*
SQL>
ENAME
DEPTNO
SAL
SALAVG
---------- ---------- ---------- ---------KING
10
5000 2916.66667
SCOTT
20
3000
2175
FORD
20
3000
2175
JONES
20
2975
2175
ALLEN
30
1600 1566.66667
BLAKE
30
2850 1566.66667
6 rows selected.
SQL> cl scr
SQL> SELECT Empno, Ename, E.Deptno, Sal, MGR
2 FROM Emp E
3 WHERE E.Sal > (
4
SELECT M.Sal
5
FROM Emp M
6
WHERE M.Empno = E.MGR
7
);
EMPNO
---------7902
7788
ENAME
DEPTNO
SAL
MGR
---------- ---------- ---------- ---------FORD
20
3000
7566
SCOTT
20
3000
7566
---------10
30
20
-------------ACCOUNTING
SALES
RESEARCH
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------10
30
10
20
30
30
30
30
30
20
20
DNAME
-------------ACCOUNTING
SALES
ACCOUNTING
RESEARCH
SALES
SALES
SALES
SALES
SALES
RESEARCH
RESEARCH
DEPTNO
---------20
20
10
DNAME
-------------RESEARCH
RESEARCH
ACCOUNTING
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------10
20
DNAME
-------------ACCOUNTING
RESEARCH
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
30 SALES
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
DEPTNO
---------10
20
30
SQL>
2
3
4
5
6*
SQL>
DNAME
-------------ACCOUNTING
RESEARCH
SALES
DEPTNO
---------10
30
20
DNAME
-------------ACCOUNTING
SALES
RESEARCH
SQL> cl scr
SQL> SELECT Deptno, Dname
2 FROM Dept D
3 WHERE NOT EXISTS (
4
5
6
7
SELECT *
FROM Emp E
WHERE E.Deptno = D.Deptno
);
DEPTNO DNAME
---------- -------------40 OPERATIONS
SQL> cl scr
SQL> SELECT E.Ename
2 FROM Emp E
3 WHERE EXISTS (
4
5
6
7
SELECT *
FROM Emp E1
WHERE E1.Empno = E.Mgr
);
ENAME
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
---------BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ENAME
---------ADAMS
MILLER
13 rows selected.
SQL> SELECT Ename FROM Emp WHERE MGR IS NOT NULL;
ENAME
---------BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ENAME
---------ADAMS
MILLER
13 rows selected.
SQL> cl scr
SQL> SELECT E.Ename
2 FROM Emp E
3 WHERE NOT EXISTS (
4
5
6
7
SELECT *
FROM Emp E1
WHERE E1.Empno = E.Mgr
);
ENAME
---------KING
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT *
FROM Emp E1
WHERE E1.Mgr = E.Empno
);
ENAME
---------KING
BLAKE
JONES
FORD
SCOTT
CLARK
6 rows selected.
SQL> SELECT E.Ename
2 FROM Emp E
3 WHERE NOT EXISTS (
4
5
6
7
SELECT *
FROM Emp E1
WHERE E1.Mgr = E.Empno
);
ENAME
---------TURNER
WARD
MARTIN
ALLEN
MILLER
SMITH
ADAMS
JAMES
8 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> SELECT Ename, Empno, Mgr, Job
2 FROM Emp
3 CONNECT BY PRIOR Empno = MGR;
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------FORD
7902
7566 ANALYST
SMITH
7369
7902 CLERK
SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
TURNER
7844
7698 SALESMAN
MILLER
7934
7782 CLERK
ADAMS
7876
7788 CLERK
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------BLAKE
7698
7839 MANAGER
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
TURNER
7844
7698 SALESMAN
CLARK
7782
7839 MANAGER
MILLER
7934
7782 CLERK
JONES
7566
7839 MANAGER
FORD
7902
7566 ANALYST
SMITH
7369
7902 CLERK
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
SMITH
7369
7902 CLERK
KING
7839
PRESIDENT
BLAKE
7698
7839 MANAGER
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
TURNER
7844
7698 SALESMAN
CLARK
7782
7839 MANAGER
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------MILLER
7934
7782 CLERK
JONES
7566
7839 MANAGER
FORD
7902
7566 ANALYST
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SMITH
SCOTT
ADAMS
7369
7788
7876
7902 CLERK
7566 ANALYST
7788 CLERK
39 rows selected.
SQL> cl scr
SQL>
2
3
4
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------KING
7839
PRESIDENT
BLAKE
7698
7839 MANAGER
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
TURNER
7844
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
CLARK
7782
7839 MANAGER
MILLER
7934
7782 CLERK
JONES
7566
7839 MANAGER
FORD
7902
7566 ANALYST
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------SMITH
7369
7902 CLERK
SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------KING
7839
PRESIDENT
BLAKE
7698
7839 MANAGER
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
TURNER
7844
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
CLARK
7782
7839 MANAGER
MILLER
7934
7782 CLERK
JONES
7566
7839 MANAGER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
7902
7566 ANALYST
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------SMITH
7369
7902 CLERK
SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
14 rows selected.
SQL> SELECT Ename, Empno, Mgr, Job
2 FROM Emp;
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------KING
7839
PRESIDENT
BLAKE
7698
7839 MANAGER
CLARK
7782
7839 MANAGER
JONES
7566
7839 MANAGER
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
TURNER
7844
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
FORD
7902
7566 ANALYST
SMITH
7369
7902 CLERK
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
MILLER
7934
7782 CLERK
14 rows selected.
SQL> cl scr
SQL>
2
3
4
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
14 rows selected.
SQL>
2
3
4
5
6
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------FORD
7902
7566 ANALYST
3000
SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT Ename, Empno, Mgr, Job, Sal
2 FROM Emp
3 START WITH Sal = (SELECT MAX(Sal)
4
5
6
Dept
7
WHERE Dname = 'ACCOUNTING')
8
9 CONNECT BY PRIOR Empno = MGR;
FROM Emp
WHERE Deptno = (SELECT Deptno
FROM
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Empno, Mgr, Job, Sal
2 FROM Emp
3 START WITH Sal = (SELECT MAX(Sal)
4
5
6
Dept
7
WHERE Dname = 'RESEARCH')
8
9* CONNECT BY PRIOR Empno = MGR
SQL> /
FROM Emp
WHERE Deptno = (SELECT Deptno
FROM
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------FORD
7902
7566 ANALYST
3000
SMITH
7369
7902 CLERK
800
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
ADAMS
7788
7876
7566 ANALYST
7788 CLERK
3000
1100
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Empno, Mgr, Job, Sal
2 FROM Emp
3 START WITH Sal = (SELECT MAX(Sal)
4
5
6
Dept
7
WHERE Dname = 'SALES')
8
9* CONNECT BY PRIOR Empno = MGR
SQL> /
FROM Emp
WHERE Deptno = (SELECT Deptno
FROM
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
6 rows selected.
SQL> cl scr
SQL> SELECT Ename, Empno, Mgr, Job, Sal
2 FROM Emp
3 START WITH Ename = (SELECT Ename
4
FROM Emp, SalGrade
5
WHERE Emp.Sal BETWEEN SalGrade.LOSAL AND
SalGrade.HiSal
6
AND grade = 5)
7 CONNECT BY PRIOR Empno = MGR;
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
ENAME
EMPNO
MGR JOB
SAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------FORD
7902
7566 ANALYST
SMITH
7369
7902 CLERK
SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------JONES
7566
7839 MANAGER
FORD
7902
7566 ANALYST
SMITH
7369
7902 CLERK
SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------JONES
7566
7839 MANAGER
KING
7839
PRESIDENT
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
FROM Emp
START WITH Job = 'ANALYST'
CONNECT BY Empno = PRIOR MGR
/
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------SCOTT
7788
7566 ANALYST
JONES
7566
7839 MANAGER
KING
7839
PRESIDENT
FORD
7902
7566 ANALYST
JONES
7566
7839 MANAGER
KING
7839
PRESIDENT
6 rows selected.
SQL> cl scr
SQL>
2
3
4
5
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
14 rows selected.
SQL>
2
3
4
5
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CLARK
JONES
7782
7566
7839 MANAGER
7839 MANAGER
2450
2975
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
6 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------JONES
7566
7839 MANAGER
2975
SQL> cl scr
SQL>
2
3
4
5
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Empno, Mgr, Job, Sal
2 FROM Emp
3 START WITH Ename = 'KING'
4 CONNECT BY PRIOR Empno = MGR
5* AND Job = 'MANAGER' OR Job = 'SALESMAN'
SQL> /
ERROR:
ORA-01436: CONNECT BY loop in user data
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
8 rows selected.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
8 rows selected.
SQL> cl scr
SQL>
2
3
4
5
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
JAMES
7900
7698 CLERK
950
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
SMITH
7369
7902 CLERK
800
SCOTT
7788
7566 ANALYST
3000
ADAMS
7876
7788 CLERK
1100
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
MARTIN
ALLEN
TURNER
WARD
CLARK
JONES
FORD
SCOTT
7839
7698
7654
7499
7844
7521
7782
7566
7902
7788
7839
7698
7698
7698
7698
7839
7839
7566
7566
PRESIDENT
MANAGER
SALESMAN
SALESMAN
SALESMAN
SALESMAN
MANAGER
MANAGER
ANALYST
ANALYST
5000
2850
1250
1600
1500
1250
2450
2975
3000
3000
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
WARD
CLARK
MILLER
JONES
SMITH
7521
7782
7934
7566
7369
7698
7839
7782
7839
7902
SALESMAN
MANAGER
CLERK
MANAGER
CLERK
1250
2450
1300
2975
800
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------ADAMS
7876
7788 CLERK
1100
12 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
SCOTT
7788
7566 ANALYST
3000
6 rows selected.
SQL>
2
3
4
5
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
FORD
7902
7566 ANALYST
3000
SCOTT
7788
7566 ANALYST
3000
6 rows selected.
SQL>
2
3
4
5
6
7
ENAME
EMPNO
MGR JOB
SAL
---------- ---------- ---------- --------- ---------BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
6 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
ENAME
EMPNO
MGR JOB
SAL
SALAVG
---------- ---------- ---------- --------- ---------- ---------KING
7839
PRESIDENT
5000
2916.67
CLARK
7782
7839 MANAGER
2450
2916.67
MILLER
7934
7782 CLERK
1300
2916.67
JONES
7566
7839 MANAGER
2975
2175
SCOTT
7788
7566 ANALYST
3000
2175
ADAMS
7876
7788 CLERK
1100
2175
FORD
7902
7566 ANALYST
3000
2175
SMITH
7369
7902 CLERK
800
2175
BLAKE
7698
7839 MANAGER
2850
1566.67
WARD
7521
7698 SALESMAN
1250
1566.67
JAMES
7900
7698 CLERK
950
1566.67
ENAME
EMPNO
MGR JOB
SAL
SALAVG
---------- ---------- ---------- --------- ---------- ---------TURNER
7844
7698 SALESMAN
1500
1566.67
ALLEN
7499
7698 SALESMAN
1600
1566.67
MARTIN
7654
7698 SALESMAN
1250
1566.67
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
ENAME
EMPNO
MGR JOB
SAL
SALAVG
---------- ---------- ---------- --------- ---------- ---------BLAKE
7698
7839 MANAGER
2850
1566.67
WARD
7521
7698 SALESMAN
1250
1566.67
JAMES
7900
7698 CLERK
950
1566.67
TURNER
7844
7698 SALESMAN
1500
1566.67
ALLEN
7499
7698 SALESMAN
1600
1566.67
MARTIN
7654
7698 SALESMAN
1250
1566.67
6 rows selected.
SQL> SELECT Ename, Empno, Mgr, Job, Sal, ROUND(SalAvg, 2) SalAvg, ROUND(((SELECT
AVG(Sal) FROM Emp) - SalAvg), 2) AvgDif
2 FROM Emp E, (SELECT Deptno, AVG(Sal) SalAvg
3
FROM Emp
4
GROUP BY Deptno) E1
5 WHERE E.Deptno = E1.Deptno AND
6 E1.Deptno = (SELECT Deptno
7
FROM Dept
8
WHERE Dname = 'SALES')
9 START WITH Ename = 'KING'
10 CONNECT BY PRIOR Empno = MGR;
ENAME
EMPNO
MGR JOB
SAL
SALAVG
AVGDIF
---------- ---------- ---------- --------- ---------- ---------- ---------BLAKE
7698
7839 MANAGER
2850
1566.67
506.55
WARD
7521
7698 SALESMAN
1250
1566.67
506.55
JAMES
7900
7698 CLERK
950
1566.67
506.55
TURNER
7844
7698 SALESMAN
1500
1566.67
506.55
ALLEN
7499
7698 SALESMAN
1600
1566.67
506.55
MARTIN
7654
7698 SALESMAN
1250
1566.67
506.55
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Empno, Mgr, Job, Sal, ROUND(SalAvg, 2) SalAvg, ROUND(((SELECT
AVG(Sal) FROM Emp) - SalAvg), 2) AvgDif
2 FROM Emp E, (SELECT Deptno, AVG(Sal) SalAvg
3
FROM Emp
4
GROUP BY Deptno) E1
5 WHERE E.Deptno = E1.Deptno AND
6 E1.Deptno = (SELECT Deptno
7
FROM Dept
8
WHERE Dname = 'SALES')
9 START WITH Ename = (
10
SELECT Ename
11
FROM Emp
12
WHERE Sal = (
13
SELECT
14
MAX(Sal)
15
FROM Emp
16
WHERE Deptno = (
17
SELECT Deptno
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
18
19
20
21
)
22
)
23* CONNECT BY PRIOR Empno = MGR
SQL> /
FROM Dept
WHERE Dname = 'ACCOUNTING'
)
ENAME
EMPNO
MGR JOB
SAL
SALAVG
AVGDIF
---------- ---------- ---------- --------- ---------- ---------- ---------BLAKE
7698
7839 MANAGER
2850
1566.67
506.55
WARD
7521
7698 SALESMAN
1250
1566.67
506.55
JAMES
7900
7698 CLERK
950
1566.67
506.55
TURNER
7844
7698 SALESMAN
1500
1566.67
506.55
ALLEN
7499
7698 SALESMAN
1600
1566.67
506.55
MARTIN
7654
7698 SALESMAN
1250
1566.67
506.55
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Empno, Mgr, Job, Sal, ROUND(SalAvg, 2) SalAvg, ROUND(((SELECT
AVG(Sal) FROM Emp) - SalAvg), 2) AvgDif
2 FROM Emp E, (SELECT Deptno, AVG(Sal) SalAvg
3
FROM Emp
4
GROUP BY Deptno) E1
5 WHERE E.Deptno = E1.Deptno AND
6 E1.Deptno = (SELECT Deptno
7
FROM Dept
8
WHERE Dname = 'SALES')
9 START WITH Ename = (
10
SELECT Ename
11
FROM Emp
12
WHERE Sal = (
13
SELECT
14
MAX(Sal)
15
FROM Emp
16
WHERE Deptno = (
17
SELECT Deptno
18
FROM Dept
19
WHERE Dname = 'ACCOUNTING'
20
)
21
)
22
)
23* CONNECT BY PRIOR Empno = MGR
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL>
2
3
4
ENAME
SAL JOB
BOSS
---------- ---------- --------- ---------KING
5000 PRESIDENT KING
BLAKE
2850 MANAGER
KING
MARTIN
1250 SALESMAN KING
ALLEN
1600 SALESMAN KING
TURNER
1500 SALESMAN KING
JAMES
950 CLERK
KING
WARD
1250 SALESMAN KING
CLARK
2450 MANAGER
KING
MILLER
1300 CLERK
KING
JONES
2975 MANAGER
KING
FORD
3000 ANALYST
KING
ENAME
SAL JOB
---------- ---------- --------SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
BOSS
---------KING
KING
KING
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
SAL JOB
BOSSJOB
---------- ---------- --------- --------KING
5000 PRESIDENT PRESIDENT
BLAKE
2850 MANAGER
PRESIDENT
MARTIN
1250 SALESMAN PRESIDENT
ALLEN
1600 SALESMAN PRESIDENT
TURNER
1500 SALESMAN PRESIDENT
JAMES
950 CLERK
PRESIDENT
WARD
1250 SALESMAN PRESIDENT
CLARK
2450 MANAGER
PRESIDENT
MILLER
1300 CLERK
PRESIDENT
JONES
2975 MANAGER
PRESIDENT
FORD
3000 ANALYST
PRESIDENT
ENAME
SAL JOB
---------- ---------- --------SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
BOSSJOB
--------PRESIDENT
PRESIDENT
PRESIDENT
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
SAL JOB
DIFFBOSSEMPSAL
---------- ---------- --------- -------------KING
5000 PRESIDENT
0
BLAKE
2850 MANAGER
2150
MARTIN
1250 SALESMAN
3750
ALLEN
1600 SALESMAN
3400
TURNER
1500 SALESMAN
3500
JAMES
950 CLERK
4050
WARD
1250 SALESMAN
3750
CLARK
2450 MANAGER
2550
MILLER
1300 CLERK
3700
JONES
2975 MANAGER
2025
FORD
3000 ANALYST
2000
ENAME
SAL JOB
DIFFBOSSEMPSAL
---------- ---------- --------- -------------SMITH
800 CLERK
4200
SCOTT
3000 ANALYST
2000
ADAMS
1100 CLERK
3900
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
JOB
EMPSAL
BOSSSAL DIFFBOSSEMPSAL
--------- ---------- ---------- -------------PRESIDENT
5000
5000
0
MANAGER
2850
5000
2150
SALESMAN
1250
5000
3750
SALESMAN
1600
5000
3400
SALESMAN
1500
5000
3500
CLERK
950
5000
4050
SALESMAN
1250
5000
3750
MANAGER
2450
5000
2550
CLERK
1300
5000
3700
MANAGER
2975
5000
2025
ANALYST
3000
5000
2000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------SMITH
SCOTT
ADAMS
JOB
EMPSAL
BOSSSAL DIFFBOSSEMPSAL
--------- ---------- ---------- -------------CLERK
800
5000
4200
ANALYST
3000
5000
2000
CLERK
1100
5000
3900
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
JOB
BOSSNAME
---------- --------- ---------KING
PRESIDENT KING
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
---------SCOTT
JONES
KING
FORD
JONES
KING
JOB
--------ANALYST
MANAGER
PRESIDENT
ANALYST
MANAGER
PRESIDENT
BOSSNAME
---------SCOTT
SCOTT
SCOTT
FORD
FORD
FORD
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
JOB
BOSSNAME
---------- --------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
PRESIDENT
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
MANAGER
CLERK
MANAGER
ANALYST
KING
KING
KING
KING
KING
KING
KING
KING
KING
KING
KING
ENAME
---------SMITH
SCOTT
ADAMS
JOB
--------CLERK
ANALYST
CLERK
BOSSNAME
---------KING
KING
KING
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
---------BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
SMITH
JOB
--------MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
MANAGER
CLERK
MANAGER
ANALYST
CLERK
BOSSNAME
---------BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
CLARK
JONES
JONES
JONES
ENAME
---------SCOTT
ADAMS
JOB
--------ANALYST
CLERK
BOSSNAME
---------JONES
JONES
13 rows selected.
SQL> cl scr
SQL> SELECT ENAME Name, HireDate,
2 CONNECT_BY_ROOT Ename Boss,
3 CONNECT_BY_ROOT HireDate BossHire,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
6
7
NAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
HIREDATE
--------17-NOV-81
01-MAY-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
09-JUN-81
23-JAN-82
02-APR-81
03-DEC-81
BOSS
---------KING
KING
KING
KING
KING
KING
KING
KING
KING
KING
KING
BOSSHIRE
DAYS
--------- ---------17-NOV-81
0
17-NOV-81
200
17-NOV-81
50
17-NOV-81
270
17-NOV-81
70
17-NOV-81
-16
17-NOV-81
268
17-NOV-81
161
17-NOV-81
-67
17-NOV-81
229
17-NOV-81
-16
NAME
---------SMITH
SCOTT
ADAMS
HIREDATE
--------17-DEC-80
09-DEC-82
12-JAN-83
BOSS
---------KING
KING
KING
BOSSHIRE
DAYS
--------- ---------17-NOV-81
335
17-NOV-81
-387
17-NOV-81
-421
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT ENAME Name, HireDate,
2 CONNECT_BY_ROOT Ename Boss,
3 CONNECT_BY_ROOT HireDate BossHire,
4 ROUND(CONNECT_BY_ROOT HireDate - HireDate) Days
5 FROM EMP
6 WHERE
7 ROUND(CONNECT_BY_ROOT HireDate - HireDate) = &GVal
8 START WITH Job = 'PRESIDENT'
9* CONNECT BY PRIOR EMPNO = MGR
SQL> /
Enter value for gval: 1
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9*
SQL> /
Enter value for gval: 1
NAME
---------BLAKE
MARTIN
ALLEN
TURNER
WARD
CLARK
JONES
SMITH
HIREDATE
--------01-MAY-81
28-SEP-81
20-FEB-81
08-SEP-81
22-FEB-81
09-JUN-81
02-APR-81
17-DEC-80
BOSS
---------KING
KING
KING
KING
KING
KING
KING
KING
BOSSHIRE
DAYS
--------- ---------17-NOV-81
200
17-NOV-81
50
17-NOV-81
270
17-NOV-81
70
17-NOV-81
268
17-NOV-81
161
17-NOV-81
229
17-NOV-81
335
8 rows selected.
SQL> /
Enter value for gval: -1
NAME
---------JAMES
MILLER
FORD
SCOTT
ADAMS
HIREDATE
--------03-DEC-81
23-JAN-82
03-DEC-81
09-DEC-82
12-JAN-83
BOSS
---------KING
KING
KING
KING
KING
BOSSHIRE
DAYS
--------- ---------17-NOV-81
-16
17-NOV-81
-67
17-NOV-81
-16
17-NOV-81
-387
17-NOV-81
-421
SQL> cl cr
SP2-0158: unknown CLEAR option "cr"
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 SELECT ENAME Name, HireDate
2 FROM EMP
3 WHERE
4 START WITH Job = 'PRESIDENT'
5* CONNECT BY PRIOR EMPNO = MGR
SQL> /
START WITH Job = 'PRESIDENT'
*
ERROR at line 4:
ORA-00936: missing expression
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
NAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
--------17-NOV-81
01-MAY-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
09-JUN-81
23-JAN-82
02-APR-81
03-DEC-81
NAME
---------SMITH
SCOTT
ADAMS
HIREDATE
--------17-DEC-80
09-DEC-82
12-JAN-83
14 rows selected.
SQL> cl scr
SQL>
SQL>
2
3
4
5
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
Path
----------------------------------/KING
/KING/BLAKE
/KING/BLAKE/MARTIN
/KING/BLAKE/ALLEN
/KING/BLAKE/TURNER
/KING/BLAKE/JAMES
/KING/BLAKE/WARD
/KING/CLARK
/KING/CLARK/MILLER
/KING/JONES
/KING/JONES/FORD
ENAME
---------SMITH
SCOTT
ADAMS
Path
----------------------------------/KING/JONES/FORD/SMITH
/KING/JONES/SCOTT
/KING/JONES/SCOTT/ADAMS
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
SELECT Ename,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5*
SQL>
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
Path
----------------------------------=>KING
=>KING=>BLAKE
=>KING=>BLAKE=>MARTIN
=>KING=>BLAKE=>ALLEN
=>KING=>BLAKE=>TURNER
=>KING=>BLAKE=>JAMES
=>KING=>BLAKE=>WARD
=>KING=>CLARK
=>KING=>CLARK=>MILLER
=>KING=>JONES
=>KING=>JONES=>FORD
ENAME
---------SMITH
SCOTT
ADAMS
Path
----------------------------------=>KING=>JONES=>FORD=>SMITH
=>KING=>JONES=>SCOTT
=>KING=>JONES=>SCOTT=>ADAMS
14 rows selected.
SQL> cl scr
SQL> SELECT Empno, Ename, MGR
2 FROM Emp;
EMPNO
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
MGR
---------- ---------KING
BLAKE
7839
CLARK
7839
JONES
7839
MARTIN
7698
ALLEN
7698
TURNER
7698
JAMES
7698
WARD
7698
FORD
7566
SMITH
7902
EMPNO
---------7788
7876
7934
ENAME
MGR
---------- ---------SCOTT
7566
ADAMS
7788
MILLER
7782
14 rows selected.
SQL> UPDATE Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
1 row updated.
SQL> SELECT Empno, Ename, MGR
2 FROM Emp;
EMPNO
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
MGR
---------- ---------KING
7566
BLAKE
7839
CLARK
7839
JONES
7839
MARTIN
7698
ALLEN
7698
TURNER
7698
JAMES
7698
WARD
7698
FORD
7566
SMITH
7902
EMPNO
---------7788
7876
7934
ENAME
MGR
---------- ---------SCOTT
7566
ADAMS
7788
MILLER
7782
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Empno, Ename, MGR
2 FROM Emp
3 START WITH Ename = 'KING'
4* CONNECT BY PRIOR Empno = MGR
SQL> /
ERROR:
ORA-01436: CONNECT BY loop in user data
no rows selected
SQL>
2
3
4
5
SELECT Ename,
SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
FROM Emp
START WITH Ename = 'KING'
CONNECT BY NOCYCLE PRIOR Empno = MGR;
ENAME
---------SalPath
-------------------------------------------------------------------------------KING
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
/5000
BLAKE
/5000/2850
MARTIN
/5000/2850/1250
ENAME
---------SalPath
-------------------------------------------------------------------------------ALLEN
/5000/2850/1600
TURNER
/5000/2850/1500
JAMES
/5000/2850/950
ENAME
---------SalPath
-------------------------------------------------------------------------------WARD
/5000/2850/1250
CLARK
/5000/2450
MILLER
/5000/2450/1300
ENAME
---------SalPath
-------------------------------------------------------------------------------JONES
/5000/2975
FORD
/5000/2975/3000
SMITH
/5000/2975/3000/800
ENAME
---------SalPath
-------------------------------------------------------------------------------SCOTT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
/5000/2975/3000
ADAMS
/5000/2975/3000/1100
14 rows selected.
SQL> COLUMN "SalPath" FORMAT A25
SQL> /
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
SalPath
------------------------/5000
/5000/2850
/5000/2850/1250
/5000/2850/1600
/5000/2850/1500
/5000/2850/950
/5000/2850/1250
/5000/2450
/5000/2450/1300
/5000/2975
/5000/2975/3000
ENAME
---------SMITH
SCOTT
ADAMS
SalPath
------------------------/5000/2975/3000/800
/5000/2975/3000
/5000/2975/3000/1100
14 rows selected.
SQL> cl scr
SQL> ROLLBACK
2 /
Rollback complete.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename,
2 SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
3 FROM Emp
4 START WITH Ename = 'KING'
5* CONNECT BY PRIOR Empno = MGR;
SQL> /
CONNECT BY PRIOR Empno = MGR;
*
ERROR at line 5:
ORA-00911: invalid character
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT Ename,
SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
FROM Emp
START WITH Ename = 'KING'
CONNECT BY PRIOR Empno = MGR
/
ENAME
---------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
SalPath
------------------------/5000
/5000/2850
/5000/2850/1250
/5000/2850/1600
/5000/2850/1500
/5000/2850/950
/5000/2850/1250
/5000/2450
/5000/2450/1300
/5000/2975
/5000/2975/3000
ENAME
---------SMITH
SCOTT
ADAMS
SalPath
------------------------/5000/2975/3000/800
/5000/2975/3000
/5000/2975/3000/1100
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT Ename,
SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
FROM Emp
START WITH Ename = 'KING'
CONNECT BY PRIOR Empno = MGR
ORDER BY Sal
/
ENAME
---------SMITH
JAMES
ADAMS
MARTIN
WARD
MILLER
TURNER
ALLEN
CLARK
BLAKE
SalPath
------------------------/5000/2975/3000/800
/5000/2850/950
/5000/2975/3000/1100
/5000/2850/1250
/5000/2850/1250
/5000/2450/1300
/5000/2850/1500
/5000/2850/1600
/5000/2450
/5000/2850
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JONES
/5000/2975
ENAME
---------FORD
SCOTT
KING
SalPath
------------------------/5000/2975/3000
/5000/2975/3000
/5000
14 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
MGR
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
MARTIN
1250 SALESMAN
ALLEN
1600 SALESMAN
TURNER
1500 SALESMAN
JAMES
950 CLERK
WARD
1250 SALESMAN
CLARK
2450 MANAGER
MILLER
1300 CLERK
JONES
2975 MANAGER
FORD
3000 ANALYST
ENAME
SAL JOB
---------- ---------- --------SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
MGR
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CLARK
MILLER
BLAKE
JAMES
MARTIN
WARD
TURNER
ALLEN
JONES
FORD
2450
1300
2850
950
1250
1250
1500
1600
2975
3000
MANAGER
CLERK
MANAGER
CLERK
SALESMAN
SALESMAN
SALESMAN
SALESMAN
MANAGER
ANALYST
ENAME
SAL JOB
---------- ---------- --------SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
MGR
ENAME
SAL JOB
---------- ---------- --------KING
5000 PRESIDENT
BLAKE
2850 MANAGER
ALLEN
1600 SALESMAN
JAMES
950 CLERK
MARTIN
1250 SALESMAN
TURNER
1500 SALESMAN
WARD
1250 SALESMAN
CLARK
2450 MANAGER
MILLER
1300 CLERK
JONES
2975 MANAGER
FORD
3000 ANALYST
ENAME
SAL JOB
---------- ---------- --------SMITH
800 CLERK
SCOTT
3000 ANALYST
ADAMS
1100 CLERK
14 rows selected.
SQL> SPOOL OFF
SELECT SequenceName.CURRVAL
SELECT SequenceName.NEXTVAL
INSERT INTO TableName
VALUES(SequenceName.CURRVAL,
INSERT INTO TableName
VALUES(SequenceName.NEXTVAL,
UPDATE TableName
SET
ColumnName = SequenceName.CURRVAL
UPDATE TableName
SET
ColumnName = SequenceName.NEXTVAL
cl scr
SQL> SELECT
2 SequenceName1.CURRVAL, SequenceName1.NEXTVAL
3
SQL> cl scr
SQL> CREATE TABLE Sample01
2 (
3
SampID
NUMBER(4)
4
Constraint SampID_PK01 PRIMARY
5
SampName
VARCHAR2(25),
6
SampDate
DATE
7
);
KEY,
Table created.
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL> SELECT SampleSeq01.CURRVAL FROM DUAL;
SELECT SampleSeq01.CURRVAL FROM DUAL
*
ERROR at line 1:
ORA-08002: sequence SAMPLESEQ01.CURRVAL is not yet defined in this session
SQL> cl scr
SQL> SELECT * FROM Sample01;
no rows selected
SQL>
2
3
4
1 row created.
SQL> SELECT SampleSeq01.CURRVAL FROM DUAL;
CURRVAL
---------0
SQL> SELECT * FROM Sample01;
SAMPID SAMPNAME
SAMPDATE
---------- ------------------------- --------0 SAMPLE
31-AUG-05
SQL>
2
3
4
1 row created.
SQL> SELECT SampleSeq01.CURRVAL FROM DUAL;
CURRVAL
---------1
SQL> SELECT * FROM Sample01;
SAMPID
---------0
1
SQL>
2
3
4
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
1 row created.
SQL>
1
2
3
R
INSERT INTO Sample01
(SampID, SampName, SampDate)
VALUES
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
R
INSERT INTO Sample01
(SampID, SampName, SampDate)
VALUES
(SampleSeq01.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample01
(SampID, SampName, SampDate)
VALUES
(SampleSeq01.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> R
1 INSERT INTO Sample01
2 (SampID, SampName, SampDate)
3 VALUES
4* (SampleSeq01.NEXTVAL, 'SAMPLE', '31-AUG-05')
INSERT INTO Sample01
*
ERROR at line 1:
ORA-08004: sequence SAMPLESEQ01.NEXTVAL exceeds MAXVALUE and cannot be
instantiated
KEY,
Table created.
SQL>
2
3
4
5
6
7
8
CYCLE
/
Sequence created.
SQL>
2
3
4
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample02
(SampID, SampName, SampDate)
VALUES
(SampleSeq02.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample02
(SampID, SampName, SampDate)
VALUES
(SampleSeq02.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample02
(SampID, SampName, SampDate)
VALUES
(SampleSeq02.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample02
(SampID, SampName, SampDate)
VALUES
(SampleSeq02.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample02
(SampID, SampName, SampDate)
VALUES
(SampleSeq02.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT SampleSeq02.CURRVAL FROM DUAL;
CURRVAL
---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5
SQL> SELECT * FROM Sample02;
SAMPID
---------0
1
2
3
4
5
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
6 rows selected.
SQL> INSERT INTO Sample02
2 (SampID, SampName, SampDate)
3 VALUES
4 (SampleSeq02.NEXTVAL, 'SAMPLE', '31-AUG-05');
INSERT INTO Sample02
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.SAMPID_PK02) violated
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE Sample03
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6* )
SQL> /
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Table created.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
1 row created.
SQL> SELECT SampleSeq03.CURRVAL FROM DUAL;
CURRVAL
---------10
SQL>
2
3
4
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample03
(SampID, SampName, SampDate)
VALUES
(SampleSeq03.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT * FROM Sample03;
SAMPID SAMPNAME
SAMPDATE
---------- ------------------------- --------10 SAMPLE
31-AUG-05
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
11
12
13
14
15
16
17
18
19
20
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
11 rows selected.
SQL>
2
3
4
1 row created.
SQL> /
1 row created.
SQL> /
1 row created.
SQL> SELECT SampleSeq03.CURRVAL FROM DUAL;
CURRVAL
---------2
SQL>
SAMPID
---------10
11
12
13
14
15
16
17
18
19
20
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
SAMPID
---------0
1
2
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
14 rows selected.
SQL> cl scr
SQL> CREATE TABLE Sample04
2 (
3
SampID
NUMBER(4)
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6
);
(
*
ERROR at line 2:
ORA-00922: missing or invalid option
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE Sample04
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6* )
SQL> /
Table created.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample04
(SampID, SampName, SampDate)
VALUES
(SampleSeq04.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
1
2
3
4*
R
INSERT INTO Sample04
(SampID, SampName, SampDate)
VALUES
(SampleSeq04.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample04
(SampID, SampName, SampDate)
VALUES
(SampleSeq04.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT * FROM Sample04;
SAMPID
---------0
10
20
30
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
SQL> cl scr
SQL> CREATE TABLE Sample05
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6
);
Table created.
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
1 row created.
SQL> R
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4*
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample05
(SampID, SampName, SampDate)
VALUES
(SampleSeq05.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT * FROM Sample05;
SAMPID
---------10
9
8
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
SQL> cl scr
SQL> CREATE TABLE Sample06
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6
);
Table created.
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
1 row created.
SQL>
1
2
3
R
INSERT INTO Sample06
(SampID, SampName, SampDate)
VALUES
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
R
INSERT INTO Sample06
(SampID, SampName, SampDate)
VALUES
(SampleSeq06.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT SampleSeq06.NEXTVAL FROM DUAL;
NEXTVAL
---------3
SQL> R
1* SELECT SampleSeq06.NEXTVAL FROM DUAL
NEXTVAL
---------4
SQL> R
1* SELECT SampleSeq06.NEXTVAL FROM DUAL
NEXTVAL
---------5
SQL>
2
3
4
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample06
(SampID, SampName, SampDate)
VALUES
(SampleSeq06.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample06
(SampID, SampName, SampDate)
VALUES
(SampleSeq06.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT * FROM Sample06;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SAMPID
---------0
1
2
6
7
8
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
31-AUG-05
6 rows selected.
SQL> CREATE TABLE Sample07_1
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6
);
Table created.
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE Sample07_2
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6* )
SQL> /
Table created.
SQL> ED
Wrote file afiedt.buf
1 CREATE TABLE Sample07_3
2 (
3
SampID
NUMBER(4),
4
SampName
VARCHAR2(25),
5
SampDate
DATE
6* )
SQL> /
Table created.
SQL>
2
3
4
5
6
7
8
Sequence created.
SQL>
2
3
4
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample07_1
(SampID, SampName, SampDate)
VALUES
(SampleSeq07.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample07_1
(SampID, SampName, SampDate)
VALUES
(SampleSeq07.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample07_2
(SampID, SampName, SampDate)
VALUES
(SampleSeq07.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample07_2
(SampID, SampName, SampDate)
VALUES
(SampleSeq07.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample07_3
(SampID, SampName, SampDate)
VALUES
(SampleSeq07.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL>
1
2
3
4*
R
INSERT INTO Sample07_3
(SampID, SampName, SampDate)
VALUES
(SampleSeq07.NEXTVAL, 'SAMPLE', '31-AUG-05')
1 row created.
SQL> SELECT * FROM Sample07_1;
SAMPID
---------0
1
2
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
SAMPNAME
------------------------SAMPLE
SAMPLE
SAMPLE
SAMPDATE
--------31-AUG-05
31-AUG-05
31-AUG-05
DATA_OBJECT_ID
OBJECT_TYPE
CREATED
LAST_DDL_TIME
TIMESTAMP
STATUS
TEMPORARY
GENERATED
SECONDARY
SQL>
SQL>
SQL>
2
3
NUMBER
VARCHAR2(19)
DATE
DATE
VARCHAR2(19)
VARCHAR2(7)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(1)
OBJECT_NAME
------------------------SAMPID_PK01
SAMPID_PK02
EMP_PRIMARY_KEY
DEPT_PRIMARY_KEY
ORD_PRIMARY_KEY
PRODUCT_PRIMARY_KEY
PRICE_INDEX
ITEM_PRIMARY_KEY
CUSTOMER_PRIMARY_KEY
ORDID
PRODID
OBJECT_TYPE
-------------------INDEX
INDEX
INDEX
INDEX
INDEX
INDEX
INDEX
INDEX
INDEX
SEQUENCE
SEQUENCE
OBJECT_NAME
------------------------SAMPLESEQ03
SAMPLESEQ05
SAMPLESEQ07
SAMPLESEQ06
SAMPLESEQ04
SAMPLESEQ02
SAMPLESEQ01
CUSTID
SAMPLE
PRICE
PRODUCT
OBJECT_TYPE
-------------------SEQUENCE
SEQUENCE
SEQUENCE
SEQUENCE
SEQUENCE
SEQUENCE
SEQUENCE
SEQUENCE
TABLE
TABLE
TABLE
OBJECT_NAME
OBJECT_TYPE
------------------------- -------------------BONUS
TABLE
EMP
TABLE
DEPT
TABLE
SAMPLE07_3
TABLE
SAMPLE07_2
TABLE
SAMPLE07_1
TABLE
SAMPLE06
TABLE
SAMPLE05
TABLE
SAMPLE04
TABLE
ITEM
TABLE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ORD
TABLE
OBJECT_NAME
------------------------CUSTOMER
DUMMY
SALGRADE
SAMPLE03
SAMPLE02
STUDENTS
SAMPLETAB
SAMPLESP
SAMPLEINS
SAMPLE01
SALES
OBJECT_TYPE
-------------------TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
VIEW
44 rows selected.
SQL> cl scr
SQL> DESC USER_SEQUENCES
Name
----------------------------------------SEQUENCE_NAME
MIN_VALUE
MAX_VALUE
INCREMENT_BY
CYCLE_FLAG
ORDER_FLAG
CACHE_SIZE
LAST_NUMBER
Null?
Type
-------- ---------------------------NOT NULL VARCHAR2(30)
NUMBER
NUMBER
NOT NULL NUMBER
VARCHAR2(1)
VARCHAR2(1)
NOT NULL NUMBER
NOT NULL NUMBER
ERROR at line 1:
ORA-08004: sequence SAMPLESEQ01.NEXTVAL exceeds MAXVALUE and cannot be
instantiated
SQL> cl scr
SQL>
2
3
4
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
TURNER
1500
30 SALESMAN
JAMES
950
30 CLERK
WARD
1250
30 SALESMAN
CLARK
2450
10 MANAGER
MILLER
1300
10 CLERK
JONES
2975
20 MANAGER
FORD
3000
20 ANALYST
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SMITH
800
20 CLERK
SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
---------1
2
3
3
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
BLAKE
2850
30 MANAGER
MARTIN
1250
30 SALESMAN
ALLEN
1600
30 SALESMAN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
3
3
2
3
2
3
LEVEL
---------4
3
4
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
1500
950
1250
2450
1300
2975
3000
30
30
30
10
10
20
20
SALESMAN
CLERK
SALESMAN
MANAGER
CLERK
MANAGER
ANALYST
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------SMITH
800
20 CLERK
SCOTT
3000
20 ANALYST
ADAMS
1100
20 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2*
3
FROM
SQL> cl scr
SQL>
SQL>
2
3
4
5
6
ORG_LEVEL
--------------1
2
3
3
3
3
3
2
3
2
3
ENAME
EMPNO
MGR JOB
---------- ---------- ---------- --------KING
7839
PRESIDENT
BLAKE
7698
7839 MANAGER
MARTIN
7654
7698 SALESMAN
ALLEN
7499
7698 SALESMAN
TURNER
7844
7698 SALESMAN
JAMES
7900
7698 CLERK
WARD
7521
7698 SALESMAN
CLARK
7782
7839 MANAGER
MILLER
7934
7782 CLERK
JONES
7566
7839 MANAGER
FORD
7902
7566 ANALYST
ORG_LEVEL
ENAME
EMPNO
MGR JOB
--------------- ---------- ---------- ---------- --------4
SMITH
7369
7902 CLERK
3
SCOTT
7788
7566 ANALYST
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
7876
7788 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename
3 FROM Emp
4 START WITH Job = 'PRESIDENT'
5* CONNECT BY PRIOR Empno = MGR
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
ORG_LEVEL
EMPNO
MGR JOB
--------------- ---------- ---------- --------1 KING
7839
PRESIDENT
2 BLAKE
7698
7839 MANAGER
3 MARTIN
7654
7698 SALESMAN
3 ALLEN
7499
7698 SALESMAN
3 TURNER
7844
7698 SALESMAN
3 JAMES
7900
7698 CLERK
3 WARD
7521
7698 SALESMAN
2 CLARK
7782
7839 MANAGER
3 MILLER
7934
7782 CLERK
2 JONES
7566
7839 MANAGER
3 FORD
7902
7566 ANALYST
ORG_LEVEL
EMPNO
MGR JOB
--------------- ---------- ---------- --------4 SMITH
7369
7902 CLERK
3 SCOTT
7788
7566 ANALYST
4 ADAMS
7876
7788 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||Ename
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
ORG_LEVEL
EMPNO
MGR JOB
--------------- ---------- ---------- --------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
7839
7698
7654
7499
7844
7900
7521
7782
7934
7566
7902
7839
7698
7698
7698
7698
7698
7839
7782
7839
7566
PRESIDENT
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
MANAGER
CLERK
MANAGER
ANALYST
ORG_LEVEL
EMPNO
MGR JOB
--------------- ---------- ---------- --------SMITH
7369
7902 CLERK
SCOTT
7788
7566 ANALYST
ADAMS
7876
7788 CLERK
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job , Sal
FROM Emp
WHERE Job != 'ANALYST'
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR;
ORG_CHART
-------------------------------------------------------------------------------EMPNO
MGR JOB
SAL
---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
MARTIN
7654
7839 MANAGER
2850
7698 SALESMAN
1250
ORG_CHART
-------------------------------------------------------------------------------EMPNO
MGR JOB
SAL
---------- ---------- --------- ---------ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
JAMES
7900
7698 SALESMAN
1500
7698 CLERK
950
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ORG_CHART
-------------------------------------------------------------------------------EMPNO
MGR JOB
SAL
---------- ---------- --------- ---------WARD
7521
7698 SALESMAN
1250
CLARK
7782
MILLER
7934
7839 MANAGER
2450
7782 CLERK
1300
ORG_CHART
-------------------------------------------------------------------------------EMPNO
MGR JOB
SAL
---------- ---------- --------- ---------JONES
7566
7839 MANAGER
2975
SMITH
7369
7902 CLERK
800
ADAMS
7876
7788 CLERK
1100
12 rows selected.
SQL> COLUMN Org_Chart FORMAT A20
SQL> /
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
MARTIN
7654
7698 SALESMAN
1250
ALLEN
7499
7698 SALESMAN
1600
TURNER
7844
7698 SALESMAN
1500
JAMES
7900
7698 CLERK
950
WARD
7521
7698 SALESMAN
1250
CLARK
7782
7839 MANAGER
2450
MILLER
7934
7782 CLERK
1300
JONES
7566
7839 MANAGER
2975
SMITH
7369
7902 CLERK
800
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------ADAMS
7876
7788 CLERK
1100
12 rows selected.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job , Sal
FROM Emp
WHERE Job != 'ANALYST'
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------1 KING
7839
PRESIDENT
5000
2 BLAKE
7698
7839 MANAGER
2850
3 MARTIN
7654
7698 SALESMAN
1250
3 ALLEN
7499
7698 SALESMAN
1600
3 TURNER
7844
7698 SALESMAN
1500
3 JAMES
7900
7698 CLERK
950
3 WARD
7521
7698 SALESMAN
1250
2 CLARK
7782
7839 MANAGER
2450
3 MILLER
7934
7782 CLERK
1300
2 JONES
7566
7839 MANAGER
2975
4 SMITH
7369
7902 CLERK
800
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------4 ADAMS
7876
7788 CLERK
1100
12 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job , Sal
FROM Emp
START WITH Ename = 'BLAKE'
CONNECT BY PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------1 BLAKE
7698
7839 MANAGER
2850
2 MARTIN
7654
7698 SALESMAN
1250
2 ALLEN
7499
7698 SALESMAN
1600
2 TURNER
7844
7698 SALESMAN
1500
2 JAMES
7900
7698 CLERK
950
2 WARD
7521
7698 SALESMAN
1250
6 rows selected.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job , Sal
FROM Emp
START WITH Ename = 'JONES'
CONNECT BY PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------1 JONES
7566
7839 MANAGER
2975
2 FORD
7902
7566 ANALYST
3000
3 SMITH
7369
7902 CLERK
800
2 SCOTT
7788
7566 ANALYST
3000
3 ADAMS
7876
7788 CLERK
1100
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
AND LEVEL <= 2;
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
8
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE LEVEL <= 2
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
3
4
5
6
7*
SQL>
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE LEVEL = 2
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 LPAD(' ', ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
3 Empno, MGR, Job, Sal
4 FROM Emp
5 START WITH Job = 'PRESIDENT'
6 CONNECT BY PRIOR Empno = MGR
7* LEVEL = 2
SQL> /
LEVEL = 2
*
ERROR at line 7:
ORA-00933: SQL command not properly ended
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR AND
LEVEL = 2
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
1
SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
7*
SQL>
SQL>
SELECT
LPAD(' ', ((2 * LEVEL) - 1))||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR
AND LEVEL = 2;
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------KING
7839
PRESIDENT
5000
BLAKE
7698
7839 MANAGER
2850
CLARK
7782
7839 MANAGER
2450
JONES
7566
7839 MANAGER
2975
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR
AND LEVEL IN(2, 4);
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------1 KING
7839
PRESIDENT
5000
2 BLAKE
7698
7839 MANAGER
2850
2 CLARK
7782
7839 MANAGER
2450
2 JONES
7566
7839 MANAGER
2975
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR
AND LEVEL IN(2, 3, 4)
/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------1 KING
7839
PRESIDENT
5000
2 BLAKE
7698
7839 MANAGER
2850
3 MARTIN
7654
7698 SALESMAN
1250
3 ALLEN
7499
7698 SALESMAN
1600
3 TURNER
7844
7698 SALESMAN
1500
3 JAMES
7900
7698 CLERK
950
3 WARD
7521
7698 SALESMAN
1250
2 CLARK
7782
7839 MANAGER
2450
3 MILLER
7934
7782 CLERK
1300
2 JONES
7566
7839 MANAGER
2975
3 FORD
7902
7566 ANALYST
3000
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------4 SMITH
7369
7902 CLERK
800
3 SCOTT
7788
7566 ANALYST
3000
4 ADAMS
7876
7788 CLERK
1100
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
8
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE LEVEL IN(2, 4)
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------2 BLAKE
7698
7839 MANAGER
2850
2 CLARK
7782
7839 MANAGER
2450
2 JONES
7566
7839 MANAGER
2975
4 SMITH
7369
7902 CLERK
800
4 ADAMS
7876
7788 CLERK
1100
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE LEVEL NOT IN(2, 4)
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 KING
3 MARTIN
3 ALLEN
3 TURNER
3 JAMES
3 WARD
3 MILLER
3 FORD
3 SCOTT
7839
7654
7499
7844
7900
7521
7934
7902
7788
7698
7698
7698
7698
7698
7782
7566
7566
PRESIDENT
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
CLERK
ANALYST
ANALYST
5000
1250
1600
1500
950
1250
1300
3000
3000
9 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE MOD(LEVEL, 2) = 0
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR;
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------2 BLAKE
7698
7839 MANAGER
2850
2 CLARK
7782
7839 MANAGER
2450
2 JONES
7566
7839 MANAGER
2975
4 SMITH
7369
7902 CLERK
800
4 ADAMS
7876
7788 CLERK
1100
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE MOD(LEVEL, 2) = 1
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR
/
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------1 KING
7839
PRESIDENT
5000
3 MARTIN
7654
7698 SALESMAN
1250
3 ALLEN
7499
7698 SALESMAN
1600
3 TURNER
7844
7698 SALESMAN
1500
3 JAMES
7900
7698 CLERK
950
3 WARD
7521
7698 SALESMAN
1250
3 MILLER
7934
7782 CLERK
1300
3 FORD
7902
7566 ANALYST
3000
3 SCOTT
7788
7566 ANALYST
3000
9 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
5
6
7
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE LEVEL BETWEEN 2 AND 4
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR;
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------2 BLAKE
7698
7839 MANAGER
2850
3 MARTIN
7654
7698 SALESMAN
1250
3 ALLEN
7499
7698 SALESMAN
1600
3 TURNER
7844
7698 SALESMAN
1500
3 JAMES
7900
7698 CLERK
950
3 WARD
7521
7698 SALESMAN
1250
2 CLARK
7782
7839 MANAGER
2450
3 MILLER
7934
7782 CLERK
1300
2 JONES
7566
7839 MANAGER
2975
3 FORD
7902
7566 ANALYST
3000
4 SMITH
7369
7902 CLERK
800
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------3 SCOTT
7788
7566 ANALYST
3000
4 ADAMS
7876
7788 CLERK
1100
13 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, MGR, Job, Sal
FROM Emp
WHERE Sal = (SELECT MAX(Sal)
FROM Emp
WHERE LEVEL = 2
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR)
START WITH Job = 'PRESIDENT'
CONNECT BY NOCYCLE PRIOR Empno = MGR;
ORG_CHART
EMPNO
MGR JOB
SAL
-------------------- ---------- ---------- --------- ---------2 JONES
7566
7839 MANAGER
2975
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
Empno, Dept.Deptno, Dname, Sal
FROM Emp, Dept
WHERE Sal > (SELECT MAX(Sal)
FROM Emp
WHERE LEVEL = 2
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
8
START WITH Job = 'PRESIDENT'
9
CONNECT BY PRIOR Empno = MGR) AND Dept.Deptno =
Emp.Deptno
10 START WITH Job = 'PRESIDENT'
11 CONNECT BY NOCYCLE PRIOR Empno = MGR;
ORG_CHART
EMPNO
DEPTNO DNAME
SAL
-------------------- ---------- ---------- -------------- ---------1 KING
7839
10 ACCOUNTING
5000
3 SCOTT
7788
20 RESEARCH
3000
3 FORD
7902
20 RESEARCH
3000
SQL> SELECT
2 LPAD(LEVEL, ((2 * LEVEL) - 1))||' '||Ename Org_Chart,
3 Empno, Dept.Deptno, Dname, Sal, Grade
4 FROM Emp, Dept, SalGrade
5 WHERE Sal > (SELECT MAX(Sal)
6
FROM Emp
7
WHERE LEVEL = 2
8
START WITH Job = 'PRESIDENT'
9
CONNECT BY PRIOR Empno = MGR) AND Dept.Deptno =
Emp.Deptno AND
10
Sal BETWEEN Losal AND HiSal
11 START WITH Job = 'PRESIDENT'
12 CONNECT BY NOCYCLE PRIOR Empno = MGR;
ORG_CHART
EMPNO
DEPTNO DNAME
SAL
GRADE
-------------------- ---------- ---------- -------------- ---------- ---------1 KING
7839
10 ACCOUNTING
5000
5
3 FORD
7902
20 RESEARCH
3000
4
3 SCOTT
7788
20 RESEARCH
3000
4
SQL> cl scr
SQL>
2
3
4
LEVEL
MAX(SAL)
---------- ---------1
5000
2
3000
3
2975
4
2850
5
2450
6
1600
7
1500
8
1300
9
1250
10
1100
11
950
LEVEL
MAX(SAL)
---------- ---------12
800
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
12 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
MIN(SAL)
---------- ---------1
800
2
950
3
1100
4
1250
5
1300
6
1500
7
1600
8
2450
9
2850
10
2975
11
3000
LEVEL
MIN(SAL)
---------- ---------12
5000
12 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SELECT MIN(Sal)
FROM EMP
GROUP BY Sal
/
MIN(SAL)
---------800
950
1100
1250
1300
1500
1600
2450
2850
2975
3000
MIN(SAL)
---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5000
12 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 SELECT LEVEL, MAX(Ename)
2 FROM EMP
3 CONNECT BY PRIOR Ename > Ename
4* GROUP BY LEVEL;
SQL> /
GROUP BY LEVEL;
*
ERROR at line 4:
ORA-00911: invalid character
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
---------1
2
3
4
5
6
7
8
9
10
11
MAX(ENAME)
---------WARD
TURNER
SMITH
SCOTT
MILLER
MARTIN
KING
JONES
JAMES
FORD
CLARK
LEVEL
---------12
13
14
MAX(ENAME)
---------BLAKE
ALLEN
ADAMS
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
MIN(ENAME)
---------ADAMS
ALLEN
BLAKE
CLARK
FORD
JAMES
JONES
KING
MARTIN
MILLER
SCOTT
LEVEL
---------12
13
14
MIN(ENAME)
---------SMITH
TURNER
WARD
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
---------1
2
3
4
5
6
7
8
9
10
11
MIN(HIRED
--------17-DEC-80
20-FEB-81
22-FEB-81
02-APR-81
01-MAY-81
09-JUN-81
08-SEP-81
28-SEP-81
17-NOV-81
03-DEC-81
23-JAN-82
LEVEL
---------12
13
MIN(HIRED
--------09-DEC-82
12-JAN-83
13 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
---------1
2
3
4
5
6
7
8
9
10
11
MAX(HIRED
--------12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
LEVEL
---------12
13
MAX(HIRED
--------12-JAN-83
12-JAN-83
13 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
---------1
2
3
4
5
6
7
8
9
10
11
MAX(HIRED
--------12-JAN-83
09-DEC-82
23-JAN-82
03-DEC-81
17-NOV-81
28-SEP-81
08-SEP-81
09-JUN-81
01-MAY-81
02-APR-81
22-FEB-81
LEVEL MAX(HIRED
---------- --------12 20-FEB-81
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
13 17-DEC-80
13 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
LEVEL
---------1
2
3
4
5
6
7
8
9
10
11
MAX(ENAME)
---------WARD
WARD
WARD
WARD
WARD
WARD
WARD
WARD
WARD
WARD
WARD
MAX(HIRED
--------12-JAN-83
09-DEC-82
23-JAN-82
03-DEC-81
17-NOV-81
28-SEP-81
08-SEP-81
09-JUN-81
01-MAY-81
02-APR-81
22-FEB-81
LEVEL
---------12
13
MAX(ENAME)
---------SMITH
SMITH
MAX(HIRED
--------20-FEB-81
17-DEC-80
13 rows selected.
SQL> cl scr
SQL>
2
3
4
LEVEL
MAX(SAL)
---------- ---------1
5000
2
3000
3
2975
4
2850
5
2450
6
1600
7
1500
8
1300
9
1250
10
1100
11
950
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
LEVEL
MAX(SAL)
---------- ---------12
800
12 rows selected.
SQL> cl scr
SQL> SELECT LEVEL, MAX(Sal)
2 FROM EMP
3 WHERE LEVEL = &LEVELNO
4 CONNECT BY PRIOR Sal > Sal
5 GROUP BY LEVEL;
Enter value for levelno: 1
LEVEL
MAX(SAL)
---------- ---------1
5000
SQL> /
Enter value for levelno: 2
LEVEL
MAX(SAL)
---------- ---------2
3000
SQL> /
Enter value for levelno: 3
LEVEL
MAX(SAL)
---------- ---------3
2975
SQL> SELECT Ename, Sal, Deptno, Job
2 FROM Emp
3 WHERE Sal = (SELECT MAX(Sal)
4
FROM EMP
5
WHERE LEVEL = &LEVELNO
6
CONNECT BY PRIOR Sal > Sal
7
GROUP BY LEVEL);
Enter value for levelno: 1
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
SQL> /
Enter value for levelno: 2
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
SQL> /
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2 FROM EMP
3 WHERE LEVEL = &LEVELNO
4 CONNECT BY PRIOR HireDate < HireDate
5 GROUP BY LEVEL;
Enter value for levelno: 1
LEVEL SENIOR
---------- --------1 17-DEC-80
SQL> /
Enter value for levelno: 5
LEVEL SENIOR
---------- --------5 01-MAY-81
SQL> SELECT Ename, Sal, HireDate
2 FROm Emp
3 WHERE HireDate = (SELECT MIN(HireDate)
4
FROM EMP
5
WHERE LEVEL = &LEVELNO
6
CONNECT BY
7
PRIOR HireDate < HireDate
8
GROUP BY LEVEL);
Enter value for levelno: 1
ENAME
SAL HIREDATE
---------- ---------- --------SMITH
800 17-DEC-80
SQL> /
Enter value for levelno: 6
ENAME
SAL HIREDATE
---------- ---------- --------CLARK
2450 09-JUN-81
SQL> /
Enter value for levelno: 2
ENAME
SAL HIREDATE
---------- ---------- --------ALLEN
1600 20-FEB-81
SQL> cl scr
SQL>
SQL>
2
3
4
5
6
7
8
Manager
Pathlen Path
---------- ---------- -----------------------------FORD
1 /FORD/SMITH
SCOTT
1 /SCOTT/ADAMS
JONES
1 /JONES/FORD
JONES
2 /JONES/FORD/SMITH
JONES
1 /JONES/SCOTT
JONES
2 /JONES/SCOTT/ADAMS
KING
1 /KING/JONES
KING
2 /KING/JONES/FORD
KING
3 /KING/JONES/FORD/SMITH
KING
2 /KING/JONES/SCOTT
KING
3 /KING/JONES/SCOTT/ADAMS
11 rows selected.
SQL> cl scr
SQL> SELECT
2 Name,
3 SUM(Sal) "Total Salary"
4 FROM (
5
SELECT
6
CONNECT_BY_ROOT Ename AS Name,
7
Sal
8
FROM Emp
9
WHERE Deptno = &GiveDeptno
10
CONNECT BY PRIOR Empno = MGR
11
)
12 GROUP BY Name;
Enter value for givedeptno: 20
NAME
Total Salary
---------- -----------ADAMS
1100
FORD
3800
JONES
10875
KING
10875
SCOTT
4100
SMITH
800
6 rows selected.
SQL> SELECT SUM(Sal) FROm Emp;
SUM(SAL)
---------29025
SQL> cl ascr
SP2-0158: unknown CLEAR option "ascr"
SQL> cl scr
SQL> SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2 Ename Employee,
3 CONNECT_BY_ROOT Empno "Root",
4 LEVEL,
5 SYS_CONNECT_BY_PATH(Ename, '/') NamePath
6 FROM Emp
7 WHERE Level <= 4 AND Deptno = &GiveDeptno
8 START WITH Ename = 'KING'
9 CONNECT BY NOCYCLE PRIOR Empno = MGR AND
10 LEVEL <= 4;
Enter value for givedeptno: 30
EMPLOYEE
Root
LEVEL
---------- ---------- ---------NAMEPATH
-------------------------------------------------------------------------------BLAKE
7839
2
/KING/BLAKE
MARTIN
7839
/KING/BLAKE/MARTIN
ALLEN
7839
/KING/BLAKE/ALLEN
EMPLOYEE
Root
LEVEL
---------- ---------- ---------NAMEPATH
-------------------------------------------------------------------------------TURNER
7839
3
/KING/BLAKE/TURNER
JAMES
7839
/KING/BLAKE/JAMES
WARD
7839
/KING/BLAKE/WARD
6 rows selected.
SQL> COLUMN NAMEPATH FORMAT A30
SQL> /
Enter value for givedeptno: 30
EMPLOYEE
Root
LEVEL NAMEPATH
---------- ---------- ---------- -----------------------------BLAKE
7839
2 /KING/BLAKE
MARTIN
7839
3 /KING/BLAKE/MARTIN
ALLEN
7839
3 /KING/BLAKE/ALLEN
TURNER
7839
3 /KING/BLAKE/TURNER
JAMES
7839
3 /KING/BLAKE/JAMES
WARD
7839
3 /KING/BLAKE/WARD
6 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT ROWNUM, Ename, Sal, Deptno
2 FROM Emp;
ROWNUM
---------1
2
3
4
5
6
7
8
9
10
11
ENAME
SAL
DEPTNO
---------- ---------- ---------KING
5000
10
BLAKE
2850
30
CLARK
2450
10
JONES
2975
20
MARTIN
1250
30
ALLEN
1600
30
TURNER
1500
30
JAMES
950
30
WARD
1250
30
FORD
3000
20
SMITH
800
20
ROWNUM
---------12
13
14
ENAME
SAL
DEPTNO
---------- ---------- ---------SCOTT
3000
20
ADAMS
1100
20
MILLER
1300
10
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWNUM
---------1
2
3
4
5
6
ENAME
SAL
DEPTNO
---------- ---------- ---------BLAKE
2850
30
MARTIN
1250
30
ALLEN
1600
30
TURNER
1500
30
JAMES
950
30
WARD
1250
30
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWNUM ENAME
SAL
DEPTNO
---------- ---------- ---------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 KING
2 CLARK
3 MILLER
5000
2450
1300
10
10
10
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWNUM
---------11
8
13
5
9
14
7
6
3
2
4
ENAME
SAL
DEPTNO
---------- ---------- ---------SMITH
800
20
JAMES
950
30
ADAMS
1100
20
MARTIN
1250
30
WARD
1250
30
MILLER
1300
10
TURNER
1500
30
ALLEN
1600
30
CLARK
2450
10
BLAKE
2850
30
JONES
2975
20
ROWNUM
---------10
12
1
ENAME
SAL
DEPTNO
---------- ---------- ---------FORD
3000
20
SCOTT
3000
20
KING
5000
10
14 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT ROWNUM, Ename, Sal
2 FROM Emp;
ROWNUM
---------1
2
3
4
5
6
7
8
9
10
11
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ROWNUM ENAME
SAL
---------- ---------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
12 SCOTT
13 ADAMS
14 MILLER
3000
1100
1300
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWNUM ENAME
SAL
---------- ---------- ---------1 KING
5000
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWNUM
---------1
2
3
4
5
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
no rows selected
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
SQL>
2
3
4
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SELECTGRAPH
---------------*
**
***
****
*****
******
*******
********
*********
**********
***********
ENAME
---------SCOTT
ADAMS
MILLER
SELECTGRAPH
---------------************
*************
**************
14 rows selected.
SQL> SELECT ROWNUM, Ename
2 FROM Emp;
ROWNUM
---------1
2
3
4
5
6
7
8
9
10
11
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ROWNUM
---------12
13
14
ENAME
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> SELECT ROWNUM, Ename, Sal
2 FROM Emp
3 ORDER BY Sal;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ROWNUM
---------11
8
13
5
9
14
7
6
3
2
4
ENAME
SAL
---------- ---------SMITH
800
JAMES
950
ADAMS
1100
MARTIN
1250
WARD
1250
MILLER
1300
TURNER
1500
ALLEN
1600
CLARK
2450
BLAKE
2850
JONES
2975
ROWNUM
---------10
12
1
ENAME
SAL
---------- ---------FORD
3000
SCOTT
3000
KING
5000
14 rows selected.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
SELECT
Ename, Sal,
LPAD('*' , ROWNUM, '*') SelectGraph
FROM Emp
ORDER BY Sal
/
ENAME
SAL SELECTGRAPH
---------- ---------- ---------------SMITH
800 ***********
JAMES
950 ********
ADAMS
1100 *************
MARTIN
1250 *****
WARD
1250 *********
MILLER
1300 **************
TURNER
1500 *******
ALLEN
1600 ******
CLARK
2450 ***
BLAKE
2850 **
JONES
2975 ****
ENAME
SAL SELECTGRAPH
---------- ---------- ---------------FORD
3000 **********
SCOTT
3000 ************
KING
5000 *
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
2
3
4
5
6
ENAME
SELECTGRAPH
SALGRAPH
RECGRAPH
---------- ---------------- -------------------- -------------------KING
*
**********
********************
*
BLAKE
**
*****
********************
*
CLARK
***
****
********************
*
JONES
****
*****
********************
*
ENAME
SELECTGRAPH
SALGRAPH
RECGRAPH
---------- ---------------- -------------------- -------------------MARTIN
*****
**
********************
*
ALLEN
******
***
********************
*
TURNER
*******
***
********************
*
JAMES
********
********************
ENAME
SELECTGRAPH
SALGRAPH
RECGRAPH
---------- ---------------- -------------------- -------------------WARD
*********
**
********************
*
FORD
SMITH
**********
***********
******
*
********************
********************
*
SCOTT
ADAMS
MILLER
************
*************
**************
******
**
**
********************
********************
********************
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
SQL>
SQL>
SQL>
ENAME
SELECTGRAPH
SALGRAPH
---------- --------------- -----------------RECGRAPH
----------------------------------KING
*
**********
*********************
BLAKE
**
*********************
*****
CLARK
***
*********************
****
ENAME
SELECTGRAPH
SALGRAPH
---------- --------------- -----------------RECGRAPH
----------------------------------JONES
****
*****
*********************
MARTIN
*****
*********************
**
ALLEN
******
*********************
***
ENAME
SELECTGRAPH
SALGRAPH
---------- --------------- -----------------RECGRAPH
----------------------------------TURNER
*******
***
*********************
JAMES
********
********************
WARD
*********
*********************
**
ENAME
SELECTGRAPH
SALGRAPH
---------- --------------- -----------------RECGRAPH
----------------------------------FORD
**********
******
********************
SMITH
***********
*
*********************
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
************
********************
******
ENAME
SELECTGRAPH
SALGRAPH
---------- --------------- -----------------RECGRAPH
----------------------------------ADAMS
*************
**
********************
MILLER
**************
********************
**
14 rows selected.
SQL> COLUMN RecGraph FORMAT A30
SQL> /
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SELECTGRAPH
--------------*
**
***
****
*****
******
*******
********
*********
**********
***********
SALGRAPH
-----------------**********
*****
****
*****
**
***
***
*
**
******
*
RECGRAPH
-----------------------------*********************
*********************
*********************
*********************
*********************
*********************
*********************
********************
*********************
********************
*********************
ENAME
---------SCOTT
ADAMS
MILLER
SELECTGRAPH
--------------************
*************
**************
SALGRAPH
-----------------******
**
**
RECGRAPH
-----------------------------********************
********************
********************
14 rows selected.
SQL> cl scr
SQL>
1
2
3
4
5
6*
R
SELECT
Ename,
LPAD('*' , ROWNUM, '*' ) SelectGraph,
LPAD('*', Sal/500, '*') SalGraph,
LPAD('*', (SYSDATE-HireDate)/500, '*') RecGraph
FROM Emp
ENAME
SELECTGRAPH
SALGRAPH
RECGRAPH
---------- --------------- ------------------ -----------------------------KING
*
**********
*********************
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
**
***
****
*****
******
*******
********
*********
**********
***********
*****
****
*****
**
***
***
*
**
******
*
*********************
*********************
*********************
*********************
*********************
*********************
********************
*********************
********************
*********************
ENAME
---------SCOTT
ADAMS
MILLER
SELECTGRAPH
--------------************
*************
**************
SALGRAPH
-----------------******
**
**
RECGRAPH
-----------------------------********************
********************
********************
14 rows selected.
SQL> cl scr
SQL>
SQL>
2
3
4
5
6
ORG_CHART
EMPNO
MGR JOB
--------------- ---------- ---------- --------*KING
7839
PRESIDENT
*BLAKE
7698
7839 MANAGER
*MARTIN
7654
7698 SALESMAN
*ALLEN
7499
7698 SALESMAN
*TURNER
7844
7698 SALESMAN
*JAMES
7900
7698 CLERK
*WARD
7521
7698 SALESMAN
*CLARK
7782
7839 MANAGER
*MILLER
7934
7782 CLERK
*JONES
7566
7839 MANAGER
*FORD
7902
7566 ANALYST
ORG_CHART
EMPNO
MGR JOB
--------------- ---------- ---------- --------*SMITH
7369
7902 CLERK
*SCOTT
7788
7566 ANALYST
*ADAMS
7876
7788 CLERK
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
SELECT
LPAD('*', ((2 * LEVEL) - 1)) LevelVAL, Ename Org_Chart
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3
4
5*
SQL>
FROM Emp
START WITH Job = 'PRESIDENT'
CONNECT BY PRIOR Empno = MGR
/
LEVELVAL
-------------------------------------------------------------------------------ORG_CHART
--------------*
KING
*
BLAKE
*
MARTIN
LEVELVAL
-------------------------------------------------------------------------------ORG_CHART
--------------*
ALLEN
*
TURNER
*
JAMES
LEVELVAL
-------------------------------------------------------------------------------ORG_CHART
--------------*
WARD
*
CLARK
*
MILLER
LEVELVAL
-------------------------------------------------------------------------------ORG_CHART
--------------*
JONES
*
FORD
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
*
SMITH
LEVELVAL
-------------------------------------------------------------------------------ORG_CHART
--------------*
SCOTT
*
ADAMS
14 rows selected.
SQL> COLUMN LEVELVAL FORMAT A15
SQL> /
LEVELVAL
--------------*
*
*
*
*
*
*
*
*
*
*
ORG_CHART
--------------KING
BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
CLARK
MILLER
JONES
FORD
LEVELVAL
--------------*
*
*
ORG_CHART
--------------SMITH
SCOTT
ADAMS
14 rows selected.
SQL> cl scr
SQL> SELECT ROWNUM "S.No", SUM(ROWNUM) Sum
2 FROM Emp
3 WHERE ROWNUM <= &GSeqVal;
Enter value for gseqval: 5
SELECT ROWNUM "S.No", SUM(ROWNUM) Sum
*
ERROR at line 1:
ORA-00937: not a single-group group function
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ROWNUM
---------1
4
2
3
5
ENAME
SAL
---------- ---------KING
5000
JONES
2975
BLAKE
2850
CLARK
2450
MARTIN
1250
SQL> SELECT *
2 FROM (SELECT Ename, Sal, Deptno, Job
3
FROM Emp
4
ORDER BY Sal DESC)
5 WHERE ROWNUM < 6;
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------KING
5000
10 PRESIDENT
FORD
3000
20 ANALYST
SCOTT
3000
20 ANALYST
JONES
2975
20 MANAGER
BLAKE
2850
30 MANAGER
SQL> cl scr
SQL>
2
3
4
5
6
ROWNUM ENAME
SAL
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ROWNUM ENAME
SAL
DEPTNO
---------- ---------- ---------- ---------1 KING
5000
10
SQL> /
Enter value for grownum: 2
ROWNUM ENAME
SAL
DEPTNO
---------- ---------- ---------- ---------2 BLAKE
2850
30
SQL> /
Enter value for grownum: 3
ROWNUM ENAME
SAL
DEPTNO
---------- ---------- ---------- ---------3 CLARK
2450
10
SQL> cl scr
SQL> SELECT RN, E2.Ename, E2.Sal
2 FROM (SELECT ROWNUM RN, E1.*
3
FROM (SELECT Ename, Sal, Deptno, Job
4
FROM Emp
5
ORDER BY Sal DESC) E1) E2
6 WHERE RN = &GiveSalNum;
Enter value for givesalnum: 1
RN ENAME
SAL
---------- ---------- ---------1 KING
5000
SQL> /
Enter value for givesalnum: 2
RN ENAME
SAL
---------- ---------- ---------2 FORD
3000
SQL> SELECT Ename, Sal, E.Deptno, Dname, Grade
2 FROM Emp E, Dept D, Salgrade S
3 WHERE Sal IN (SELECT E2.Sal
4
FROM (SELECT ROWNUM RN, E1.*
5
FROM (SELECT Ename, Sal, Deptno, Job
6
FROM Emp
7
ORDER BY Sal DESC) E1) E2
8
WHERE E2.RN = &Rn)
9 AND E.Deptno = D.Deptno AND
10 E.Sal BETWEEN S.Losal AND S.HiSal;
Enter value for rn: 1
ENAME
SAL
DEPTNO DNAME
GRADE
---------- ---------- ---------- -------------- ---------KING
5000
10 ACCOUNTING
5
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for rn: 2
ENAME
SAL
DEPTNO DNAME
GRADE
---------- ---------- ---------- -------------- ---------SCOTT
3000
20 RESEARCH
4
FORD
3000
20 RESEARCH
4
SQL> cl scr
SQL> SELECT RN, Ename, Sal
2 FROM (SELECT ROWNUM RN, Ename, Sal
3
FROM Emp)
4 WHERE MOD(RN, 2) = 0;
RN
---------2
4
6
8
10
12
14
ENAME
SAL
---------- ---------BLAKE
2850
JONES
2975
ALLEN
1600
JAMES
950
FORD
3000
SCOTT
3000
MILLER
1300
7 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
RN
---------1
3
5
7
9
11
13
ENAME
SAL
---------- ---------KING
5000
CLARK
2450
MARTIN
1250
TURNER
1500
WARD
1250
SMITH
800
ADAMS
1100
7 rows selected.
SQL> cl scr
SQL> SELECT RN, Ename, Sal
2 FROM (SELECT ROWNUM RN, Ename, Sal
3
FROM Emp)
4 WHERE RN BETWEEN &GineRn1 AND &GiveRn2;
Enter value for ginern1: 1
Enter value for givern2: 5
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
RN
---------1
2
3
4
5
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
SQL> /
Enter value for ginern1: 6
Enter value for givern2: 10
RN
---------6
7
8
9
10
ENAME
SAL
---------- ---------ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SQL> /
Enter value for ginern1: 11
Enter value for givern2: 16
RN
---------11
12
13
14
ENAME
SAL
---------- ---------SMITH
800
SCOTT
3000
ADAMS
1100
MILLER
1300
SQL> cl scr
SQL> SELECT ROWNUM, Ename, Sal
2 FROM Emp
3 GROUP BY ROWNUM, Ename, Sal
4 HAVING ROWNUM BETWEEN &GiveRowNum1 AND &GiveRowNum2;
Enter value for giverownum1: 1
Enter value for giverownum2: 5
ROWNUM
---------1
2
3
4
5
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
SQL> /
Enter value for giverownum1: 6
Enter value for giverownum2: 10
ROWNUM ENAME
SAL
---------- ---------- ---------6 ALLEN
1600
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7
8
9
10
TURNER
JAMES
WARD
FORD
1500
950
1250
3000
SQL> /
Enter value for giverownum1: 11
Enter value for giverownum2: 15
ROWNUM
---------11
12
13
14
ENAME
SAL
---------- ---------SMITH
800
SCOTT
3000
ADAMS
1100
MILLER
1300
SQL> cl scr
SQL> SELECT Ename, Sal, E.Deptno, Dname, Grade
2 FROM Emp E, Dept D, Salgrade S
3 WHERE Sal IN (SELECT E2.Sal
4
FROM (SELECT ROWNUM RN, E1.*
5
FROM (SELECT Ename, Sal, Deptno, Job
6
FROM Emp
7
ORDER BY Sal DESC) E1) E2
8
WHERE E2.RN BETWEEN &RN1 AND &RN2)
9 AND E.Deptno = D.Deptno AND
10 E.Sal BETWEEN S.Losal AND S.HiSal;
Enter value for rn1: 1
Enter value for rn2: 6
ENAME
SAL
DEPTNO DNAME
GRADE
---------- ---------- ---------- -------------- ---------KING
5000
10 ACCOUNTING
5
SCOTT
3000
20 RESEARCH
4
FORD
3000
20 RESEARCH
4
JONES
2975
20 RESEARCH
4
BLAKE
2850
30 SALES
4
CLARK
2450
10 ACCOUNTING
4
6 rows selected.
SQL> cl scr
SQL> SELECT ROWID, Ename, Sal, Deptno
2 FROM Emp;
ROWID
ENAME
SAL
DEPTNO
------------------ ---------- ---------- ---------AAANCuAAEAAAAG/AAA KING
5000
10
AAANCuAAEAAAAG/AAB BLAKE
2850
30
AAANCuAAEAAAAG/AAC CLARK
2450
10
AAANCuAAEAAAAG/AAD JONES
2975
20
AAANCuAAEAAAAG/AAE MARTIN
1250
30
AAANCuAAEAAAAG/AAF ALLEN
1600
30
AAANCuAAEAAAAG/AAG TURNER
1500
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
AAANCuAAEAAAAG/AAH
AAANCuAAEAAAAG/AAI
AAANCuAAEAAAAG/AAJ
AAANCuAAEAAAAG/AAK
JAMES
WARD
FORD
SMITH
950
1250
3000
800
30
30
20
20
ROWID
-----------------AAANCuAAEAAAAG/AAL
AAANCuAAEAAAAG/AAM
AAANCuAAEAAAAG/AAN
ENAME
SAL
DEPTNO
---------- ---------- ---------SCOTT
3000
20
ADAMS
1100
20
MILLER
1300
10
14 rows selected.
SQL>
2
3
4
ROWID
ENAME
SAL
DEPTNO
------------------ ---------- ---------- ---------AAANCuAAEAAAAG/AAI WARD
1250
30
SQL>
SQL>
2
3
ROWID
ENAME
SAL
DEPTNO
------------------ ---------- ---------- ---------AAANCuAAEAAAAG/AAI WARD
1250
30
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=20)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
20)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=20)
1
0
TABLE ACCESS (BY USER ROWID) OF 'EMP' (TABLE) (Cost=1 Card
=1 Bytes=20)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWID
-----------------AAANCuAAEAAAAG/AAA
AAANCuAAEAAAAG/AAB
AAANCuAAEAAAAG/AAC
AAANCuAAEAAAAG/AAD
AAANCuAAEAAAAG/AAE
AAANCuAAEAAAAG/AAF
AAANCuAAEAAAAG/AAG
AAANCuAAEAAAAG/AAH
ENAME
SAL
DEPTNO
---------- ---------- ---------KING
5000
10
BLAKE
2850
30
CLARK
2450
10
JONES
2975
20
MARTIN
1250
30
ALLEN
1600
30
TURNER
1500
30
JAMES
950
30
8 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=20)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
20)
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ROWID
-----------------AAANCuAAEAAAAG/AAJ
AAANCuAAEAAAAG/AAK
AAANCuAAEAAAAG/AAL
AAANCuAAEAAAAG/AAM
AAANCuAAEAAAAG/AAN
ENAME
SAL
DEPTNO
---------- ---------- ---------FORD
3000
20
SMITH
800
20
SCOTT
3000
20
ADAMS
1100
20
MILLER
1300
10
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=20)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
20)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
FROM
SQL> cl scr
SQL>
2
3
4
SAL
Cum Sal
---------- ---------5000
5000
2850
7850
2450
10300
2975
13275
1250
14525
1600
16125
1500
17625
950
18575
1250
19825
3000
22825
800
23625
SAL
Cum Sal
---------- ---------3000
26625
1100
27725
1300
29025
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=10 Bytes=22
0)
1
2
3
4
0
1
2
3
5
6
2
5
SQL> cl scr
SQL>
2
3
4
5
6
ENAME
SAL
Cum Sal
---------- ---------- ---------KING
5000
5000
BLAKE
2850
7850
CLARK
2450
10300
JONES
2975
13275
MARTIN
1250
14525
ALLEN
1600
16125
TURNER
1500
17625
JAMES
950
18575
WARD
1250
19825
FORD
3000
22825
SMITH
800
23625
ENAME
SAL
Cum Sal
---------- ---------- ---------SCOTT
3000
26625
ADAMS
1100
27725
MILLER
1300
29025
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=10 Bytes=2
80)
1
2
3
4
5
0
1
2
3
4
6
7
3
6
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
ENAME
SAL
Cum Sal
Mov Avg
---------- ---------- ---------- ---------KING
5000
5000
5000
BLAKE
2850
7850
3925
CLARK
2450
10300 3433.33333
JONES
2975
13275
3318.75
MARTIN
1250
14525
2905
ALLEN
1600
16125
2687.5
TURNER
1500
17625 2517.85714
JAMES
950
18575
2321.875
WARD
1250
19825 2202.77778
FORD
3000
22825
2282.5
SMITH
800
23625 2147.72727
ENAME
SAL
Cum Sal
Mov Avg
---------- ---------- ---------- ---------SCOTT
3000
26625
2218.75
ADAMS
1100
27725 2132.69231
MILLER
1300
29025 2073.21429
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=10 Bytes=2
80)
1
2
3
4
5
0
1
2
3
4
6
7
3
6
ENAME
EMPNO
MGR
---------- ---------- ---------KING
7839
BLAKE
7698
7839
MARTIN
7654
7698
ALLEN
7499
7698
TURNER
7844
7698
JAMES
7900
7698
WARD
7521
7698
CLARK
7782
7839
MILLER
7934
7782
JONES
7566
7839
FORD
7902
7566
ENAME
EMPNO
MGR
---------- ---------- ---------SMITH
7369
7902
SCOTT
7788
7566
ADAMS
7876
7788
14 rows selected.
SQL> UPDATE Emp
2 SET MGR = 7566
3 WHERE Empno = 7839;
1 row updated.
SQL> SELECT Ename, Empno, MGR
2 FROM Emp;
ENAME
EMPNO
MGR
---------- ---------- ---------KING
7839
7566
BLAKE
7698
7839
CLARK
7782
7839
JONES
7566
7839
MARTIN
7654
7698
ALLEN
7499
7698
TURNER
7844
7698
JAMES
7900
7698
WARD
7521
7698
FORD
7902
7566
SMITH
7369
7902
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
EMPNO
MGR
---------- ---------- ---------SCOTT
7788
7566
ADAMS
7876
7788
MILLER
7934
7782
14 rows selected.
SQL> SELECT Ename, Empno, MGR
2 FROM Emp
3 START WITH Empno = 7839
4 CONNECT BY PRIOR Empno = MGR;
ERROR:
ORA-01436: CONNECT BY loop in user data
no rows selected
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
EMPNO
MGR
---------- ---------- ---------KING
7839
7566
BLAKE
7698
7839
MARTIN
7654
7698
ALLEN
7499
7698
TURNER
7844
7698
JAMES
7900
7698
WARD
7521
7698
CLARK
7782
7839
MILLER
7934
7782
JONES
7566
7839
FORD
7902
7566
ENAME
EMPNO
MGR
---------- ---------- ---------SMITH
7369
7902
SCOTT
7788
7566
ADAMS
7876
7788
14 rows selected.
SQL> cl scr
SQL>
SQL>
2
3
4
5
6
7
ENAME
Cycle
LEVEL SalPath
---------- ---------- ---------- -------------------KING
0
1 /5000
BLAKE
0
2 /5000/2850
MARTIN
0
3 /5000/2850/1250
ALLEN
0
3 /5000/2850/1600
TURNER
0
3 /5000/2850/1500
JAMES
0
3 /5000/2850/950
WARD
0
3 /5000/2850/1250
CLARK
0
2 /5000/2450
MILLER
0
3 /5000/2450/1300
JONES
1
2 /5000/2975
FORD
0
3 /5000/2975/3000
ENAME
Cycle
LEVEL SalPath
---------- ---------- ---------- -------------------SMITH
0
4 /5000/2975/3000/800
SCOTT
0
3 /5000/2975/3000
ADAMS
0
4 /5000/2975/3000/1100
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename,
2 CONNECT_BY_ISCYCLE "Cycle",
3 LEVEL,
4 SYS_CONNECT_BY_PATH(Sal, '/') "SalPath"
5 FROM Emp
6 WHERE CONNECT_BY_ISCYCLE = &GCycle
7 START WITH Ename = 'KING'
8* CONNECT BY NOCYCLE PRIOR Empno = MGR
SQL> /
Enter value for gcycle: 0
ENAME
Cycle
LEVEL SalPath
---------- ---------- ---------- -------------------KING
0
1 /5000
BLAKE
0
2 /5000/2850
MARTIN
0
3 /5000/2850/1250
ALLEN
0
3 /5000/2850/1600
TURNER
0
3 /5000/2850/1500
JAMES
0
3 /5000/2850/950
WARD
0
3 /5000/2850/1250
CLARK
0
2 /5000/2450
MILLER
0
3 /5000/2450/1300
FORD
0
3 /5000/2975/3000
SMITH
0
4 /5000/2975/3000/800
ENAME
Cycle
LEVEL SalPath
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
EMPNO
MGR
---------- ---------- ---------KING
7839
BLAKE
7698
7839
MARTIN
7654
7698
ALLEN
7499
7698
TURNER
7844
7698
JAMES
7900
7698
WARD
7521
7698
CLARK
7782
7839
MILLER
7934
7782
JONES
7566
7839
FORD
7902
7566
ENAME
EMPNO
MGR
---------- ---------- ---------SMITH
7369
7902
SCOTT
7788
7566
ADAMS
7876
7788
14 rows selected.
SQL>
2
3
4
5
Employee
IsLeaf
LEVEL
---------- ---------- ---------Path
-------------------------------------------------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
KING
/KING
BLAKE
/KING/BLAKE
MARTIN
/KING/BLAKE/MARTIN
Employee
IsLeaf
LEVEL
---------- ---------- ---------Path
-------------------------------------------------------------------------------ALLEN
1
3
/KING/BLAKE/ALLEN
TURNER
/KING/BLAKE/TURNER
JAMES
/KING/BLAKE/JAMES
Employee
IsLeaf
LEVEL
---------- ---------- ---------Path
-------------------------------------------------------------------------------WARD
1
3
/KING/BLAKE/WARD
CLARK
/KING/CLARK
MILLER
/KING/CLARK/MILLER
Employee
IsLeaf
LEVEL
---------- ---------- ---------Path
-------------------------------------------------------------------------------JONES
0
2
/KING/JONES
FORD
/KING/JONES/FORD
SMITH
1
/KING/JONES/FORD/SMITH
Employee
IsLeaf
LEVEL
---------- ---------- ---------Path
-------------------------------------------------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
/KING/JONES/SCOTT
ADAMS
1
/KING/JONES/SCOTT/ADAMS
14 rows selected.
SQL> COLUMN "Path" FORMAT A25
SQL> /
Employee
IsLeaf
LEVEL Path
---------- ---------- ---------- ------------------------KING
0
1 /KING
BLAKE
0
2 /KING/BLAKE
MARTIN
1
3 /KING/BLAKE/MARTIN
ALLEN
1
3 /KING/BLAKE/ALLEN
TURNER
1
3 /KING/BLAKE/TURNER
JAMES
1
3 /KING/BLAKE/JAMES
WARD
1
3 /KING/BLAKE/WARD
CLARK
0
2 /KING/CLARK
MILLER
1
3 /KING/CLARK/MILLER
JONES
0
2 /KING/JONES
FORD
0
3 /KING/JONES/FORD
Employee
IsLeaf
LEVEL Path
---------- ---------- ---------- ------------------------SMITH
1
4 /KING/JONES/FORD/SMITH
SCOTT
0
3 /KING/JONES/SCOTT
ADAMS
1
4 /KING/JONES/SCOTT/ADAMS
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename "Employee", CONNECT_BY_ISLEAF "IsLeaf",
2 LEVEL, SYS_CONNECT_BY_PATH(Ename, '/') "Path"
3 FROM Emp
4 WHERE CONNECT_BY_ISLEAF = &GLeaf
5 START WITH Empno = 7839
6* CONNECT BY PRIOR Empno = MGR
SQL> /
Enter value for gleaf: 1
Employee
IsLeaf
LEVEL Path
---------- ---------- ---------- ------------------------MARTIN
1
3 /KING/BLAKE/MARTIN
ALLEN
1
3 /KING/BLAKE/ALLEN
TURNER
1
3 /KING/BLAKE/TURNER
JAMES
1
3 /KING/BLAKE/JAMES
WARD
1
3 /KING/BLAKE/WARD
MILLER
1
3 /KING/CLARK/MILLER
SMITH
1
4 /KING/JONES/FORD/SMITH
ADAMS
1
4 /KING/JONES/SCOTT/ADAMS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
8 rows selected.
SQL> /
Enter value for gleaf: 0
Employee
IsLeaf
LEVEL Path
---------- ---------- ---------- ------------------------KING
0
1 /KING
BLAKE
0
2 /KING/BLAKE
CLARK
0
2 /KING/CLARK
JONES
0
2 /KING/JONES
FORD
0
3 /KING/JONES/FORD
SCOTT
0
3 /KING/JONES/SCOTT
6 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SQL>
2
3
SELECT ColumnName
FROM TableName
WHERE ColumnName = Condition
<SET OPERATOR>
SELECT ColumnName
FROM TableName
WHERE ColumnName = Condition
SELECT Ename, Dname
FROM Emp, Dept
WHERE Emp.Deptno = Dept.Deptno;
ENAME
---------KING
CLARK
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
DNAME
-------------ACCOUNTING
ACCOUNTING
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
ENAME
---------TURNER
JAMES
WARD
DNAME
-------------SALES
SALES
SALES
14 rows selected.
SQL>
2
3
4
5
SELECT Ename
FROM Emp
UNION
SELECT Dname
FROM Dept;
ENAME
-------------ACCOUNTING
ADAMS
ALLEN
BLAKE
CLARK
FORD
JAMES
JONES
KING
MARTIN
MILLER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
-------------OPERATIONS
RESEARCH
SALES
SCOTT
SMITH
TURNER
WARD
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
ENAME
DEPTNO
-------------- ---------ACCOUNTING
10
ADAMS
20
ALLEN
30
BLAKE
30
CLARK
10
FORD
20
JAMES
30
JONES
20
KING
10
MARTIN
30
MILLER
10
ENAME
DEPTNO
-------------- ---------OPERATIONS
40
RESEARCH
20
SALES
30
SCOTT
20
SMITH
20
TURNER
30
WARD
30
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL> /
SELECT Ename, Deptno
*
ERROR at line 1:
ORA-01789: query block has incorrect number of result columns
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Deptno
2 FROM Emp
3 UNION
4 SELECT Deptno, Dname
5* FROM Dept
SQL> /
SELECT Ename, Deptno
*
ERROR at line 1:
ORA-01790: expression must have same datatype as corresponding expression
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Deptno
2 FROM Emp
3 ORDER BY Ename
4 UNION
5 SELECT Dname, Deptno
6* FROM Dept
SQL> /
UNION
*
ERROR at line 4:
ORA-00933: SQL command not properly ended
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
-------------- ---------ACCOUNTING
10
ADAMS
20
ALLEN
30
BLAKE
30
CLARK
10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
JAMES
JONES
KING
MARTIN
MILLER
20
30
20
10
30
10
ENAME
DEPTNO
-------------- ---------OPERATIONS
40
RESEARCH
20
SALES
30
SCOTT
20
SMITH
20
TURNER
30
WARD
30
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1 (
2
SELECT Ename, Deptno
3
FROM Emp
4
UNION
5
SELECT Dname, Deptno
6
FROM Dept
7 )
8* ORDER BY Ename
SQL> /
ENAME
DEPTNO
-------------- ---------ACCOUNTING
10
ADAMS
20
ALLEN
30
BLAKE
30
CLARK
10
FORD
20
JAMES
30
JONES
20
KING
10
MARTIN
30
MILLER
10
ENAME
DEPTNO
-------------- ---------OPERATIONS
40
RESEARCH
20
SALES
30
SCOTT
20
SMITH
20
TURNER
30
WARD
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1 (
2
SELECT Ename, Deptno
3
FROM Emp
4
UNION
5
SELECT Dname, Deptno
6
FROM Dept
7 )
8* ORDER BY Dname
SQL> /
ORDER BY Dname
*
ERROR at line 8:
ORA-00904: "DNAME": invalid identifier
SQL> ED
Wrote file afiedt.buf
1 (
2
SELECT Ename, Deptno
3
FROM Emp
4
UNION
5
SELECT Dname, Deptno
6
FROM Dept
7 )
8* ORDER BY 1
SQL> /
ENAME
DEPTNO
-------------- ---------ACCOUNTING
10
ADAMS
20
ALLEN
30
BLAKE
30
CLARK
10
FORD
20
JAMES
30
JONES
20
KING
10
MARTIN
30
MILLER
10
ENAME
DEPTNO
-------------- ---------OPERATIONS
40
RESEARCH
20
SALES
30
SCOTT
20
SMITH
20
TURNER
30
WARD
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
18 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT Ename
FROM Emp
WHERE Deptno = 10
UNION
SELECT Ename
FROM Emp
WHERE Deptno = 30;
ENAME
---------ALLEN
BLAKE
CLARK
JAMES
KING
MARTIN
MILLER
TURNER
WARD
9 rows selected.
SQL> SELECT Ename
2 FROM Emp
3 WHERE Deptno IN(10, 30);
ENAME
---------KING
BLAKE
CLARK
MARTIN
ALLEN
TURNER
JAMES
WARD
MILLER
9 rows selected.
SQL>
SQL>
2
3
ENAME
---------KING
BLAKE
CLARK
MARTIN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ALLEN
TURNER
JAMES
WARD
MILLER
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=9 Bytes=81)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=9 Bytes=
81)
SQL>
2
3
4
5
6
7
SELECT Ename
FROM Emp
WHERE Deptno = 10
UNION
SELECT Ename
FROM Emp
WHERE Deptno = 30;
ENAME
---------ALLEN
BLAKE
CLARK
JAMES
KING
MARTIN
MILLER
TURNER
WARD
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=10 Bytes=90
)
1
2
3
0
1
2
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT Ename
FROM Emp
WHERE Deptno = 10
INTERSECT
SELECT Ename
FROM Emp
WHERE Deptno = 30
/
no rows selected
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=5 Bytes=90)
1
0
INTERSECTION
2
1
SORT (UNIQUE) (Cost=4 Card=5 Bytes=45)
3
2
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=5 By
tes=45)
4
5
1
4
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT Ename
FROM Emp
WHERE Deptno = 10
MINUS
SELECT Ename
FROM Emp
WHERE Deptno = 30
/
ENAME
---------CLARK
KING
MILLER
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=5 Bytes=90)
1
0
MINUS
2
1
SORT (UNIQUE) (Cost=4 Card=5 Bytes=45)
3
2
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=5 By
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
tes=45)
4
5
1
4
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT Job
FROM Emp
WHERE Deptno = 10
UNION
SELECT Job
FROM Emp
WHERE Deptno = 30;
JOB
--------CLERK
MANAGER
PRESIDENT
SALESMAN
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=10 Bytes=11
0)
1
2
3
0
1
2
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT Job
FROM Emp
WHERE Deptno = 10
UNION ALL
SELECT Job
FROM Emp
WHERE Deptno = 30
/
JOB
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
--------PRESIDENT
MANAGER
CLERK
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=6 Card=10 Bytes=11
0)
1
2
0
1
UNION-ALL
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=5 Byte
s=55)
SQL> ED
Wrote file afiedt.buf
1 SELECT Job
2 FROM Emp
3 WHERE Deptno = 10
4 INTESECT
5 SELECT Job
6 FROM Emp
7* WHERE Deptno = 30
SQL> /
INTESECT
*
ERROR at line 4:
ORA-00933: SQL command not properly ended
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SELECT Job
FROM Emp
WHERE Deptno = 10
INTERSECT
SELECT Job
FROM Emp
WHERE Deptno = 30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
JOB
--------CLERK
MANAGER
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=5 Bytes=110
)
1
2
3
0
1
2
INTERSECTION
SORT (UNIQUE) (Cost=4 Card=5 Bytes=55)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=5 By
tes=55)
4
5
1
4
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT Job
FROM Emp
WHERE Deptno = 10
MINUS
SELECT Job
FROM Emp
WHERE Deptno = 30
/
JOB
--------PRESIDENT
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=5 Bytes=110
)
1
2
3
0
1
2
MINUS
SORT (UNIQUE) (Cost=4 Card=5 Bytes=55)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=5 By
tes=55)
4
5
1
4
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT Job
FROM Emp
WHERE Deptno = 10
UNION
SELECT Job
FROM Emp
WHERE Deptno = 20
INTERSECT
SELECT Job
FROM Emp
WHERE Deptno = 30;
JOB
--------CLERK
MANAGER
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=12 Card=5 Bytes=16
5)
1
2
3
4
0
1
2
3
INTERSECTION
SORT (UNIQUE) (Cost=12 Card=5 Bytes=165)
UNION-ALL
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=5
Bytes=55)
6
7
1
6
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
SELECT Job
FROM Emp
WHERE Deptno = 10
UNION
(
SELECT Job
FROM Emp
WHERE Deptno = 20
INTERSECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10
SELECT Job
11
FROM Emp
12
WHERE Deptno = 30
13* )
SQL> /
JOB
--------CLERK
MANAGER
PRESIDENT
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=12 Card=10 Bytes=1
65)
1
2
3
0
1
2
4
5
6
2
4
5
INTERSECTION
SORT (UNIQUE) (Cost=4 Card=5 Bytes=55)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=
5 Bytes=55)
7
8
4
7
SQL> cl scr
SQL> SELECT Deptno, Dname
2 FROM Emp
3 WHERE Deptno = &GDeptno1
4 UNION
5 SELECT Ename, Sal, HireDate
6 FROm Emp
7 WHERE Deptno = &GDeptno2;
Enter value for gdeptno1: 10
Enter value for gdeptno2: 10
SELECT Deptno, Dname
*
ERROR at line 1:
ORA-00904: "DNAME": invalid identifier
SQL> ED
Wrote file afiedt.buf
1
2 FROM Dept
3 WHERE Deptno = &GDeptno1
4 UNION
5 SELECT Ename, Sal, HireDate
6 FROm Emp
7* WHERE Deptno = &GDeptno2
SQL>
SQL> 10
SP2-0226: Invalid line number
SQL> 10
SP2-0226: Invalid line number
SQL> /
Enter value for gdeptno1: 10
Enter value for gdeptno2: 10
SELECT Deptno, Dname
*
ERROR at line 1:
ORA-01789: query block has incorrect number of result columns
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, Dname, NULL Ename, NULL Sal, NULL HireDate
2 FROM Dept
3 WHERE Deptno = &GDeptno1
4 UNION
5 SELECT NULL, NULL, Ename, Sal, HireDate
6 FROm Emp
7* WHERE Deptno = &GDeptno2
SQL> /
Enter value for gdeptno1: 10
Enter value for gdeptno2: 10
DEPTNO DNAME
ENAME
SAL HIREDATE
---------- -------------- ---------- ---------- --------10 ACCOUNTING
CLARK
2450 09-JUN-81
KING
5000 17-NOV-81
MILLER
1300 23-JAN-82
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=6 Card=6 Bytes=118
)
1
2
3
0
1
2
SQL> /
Enter value for gdeptno1: 20
Enter value for gdeptno2: 20
DEPTNO DNAME
ENAME
SAL HIREDATE
---------- -------------- ---------- ---------- --------20 RESEARCH
ADAMS
1100 12-JAN-83
FORD
3000 03-DEC-81
JONES
2975 02-APR-81
SCOTT
3000 09-DEC-82
SMITH
800 17-DEC-80
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=6 Card=6 Bytes=118
)
1
2
3
0
1
2
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL> /
Enter value for gdeptno1: 10
Enter value for gdeptno2: 10
Enter value for gdeptno3: 10
DEPTNO DNAME
ENAME
SAL HIREDATE
---------- -------------- ---------- ---------- --------10 ACCOUNTING
CLARK
2450 09-JUN-81
KING
5000 17-NOV-81
MILLER
1300 23-JAN-82
8750
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=7 Bytes=12
5)
1
2
3
0
1
2
6
7
2
6
SQL> cl scr
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SUM(SAL)
---------- ---------10
8750
20
10875
30
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=3 Bytes=21)
1
0
SORT (GROUP BY) (Cost=4 Card=3 Bytes=21)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=98)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=4)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=56)
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
SUM(SAL)
ORGSAL
---------- ---------- ---------10
8750
29025
20
10875
29025
30
9400
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=3 Bytes=21)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=56)
3
4
0
3
SQL> ED
Wrote file afiedt.buf
1
2
3
SELECT
4
SUM(Sal) OrGSal
5
FROM Emp)
6* GROUP BY Deptno, OrGSal
SQL> /
DEPTNO
SUM(SAL)
ORGSAL
---------- ---------- ---------10
8750
29025
20
10875
29025
30
9400
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=3 Bytes=60)
1
0
SORT (GROUP BY) (Cost=7 Card=3 Bytes=60)
2
1
MERGE JOIN (CARTESIAN) (Cost=6 Card=14 Bytes=280)
3
2
VIEW (Cost=3 Card=1 Bytes=13)
4
3
SORT (AGGREGATE)
5
4
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=
14 Bytes=56)
6
SQL>
2
3
4
5
6
DEPTNO
SALSUM
---------- ---------10
8750
20
10875
30
9400
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=4 Bytes=25)
1
0
SORT (UNIQUE) (Cost=9 Card=4 Bytes=25)
2
1
UNION-ALL
3
2
SORT (GROUP BY) (Cost=5 Card=3 Bytes=21)
4
3
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14
Bytes=98)
5
6
2
5
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=11 Bytes=16
5)
1
2
0
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=3 Bytes=21)
1
0
SORT (GROUP BY) (Cost=4 Card=3 Bytes=21)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=98)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=4)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=56)
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
DEPTNO
---------10
10
10
10
20
20
20
20
30
30
30
JOB
SALSUM
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
ANALYST
6000
CLERK
1900
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SALSUM
---------- --------- ---------30
9400
29025
13 rows selected.
Execution Plan
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=14 Card=15 Bytes=1
90)
1
2
3
4
0
1
2
3
5
6
2
5
7
8
2
7
SQL> cl scr
SQL>
2
3
4
5
6
7
8
View created.
SQL> SELECT
2
Empno "ID Number",
3
Ename Name,
4
Sal "Basic Salary",
5
Job Designation
6 FROM Emp;
ID Number
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
NAME
Basic Salary
---------- -----------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
DESIGNATI
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ID Number
---------7788
7876
7934
NAME
Basic Salary
---------- -----------SCOTT
3000
ADAMS
1100
MILLER
1300
DESIGNATI
--------ANALYST
CLERK
CLERK
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=54
6)
1
NAME
Basic Salary
---------- -----------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
DESIGNATI
--------PRESIDENT
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
ID Number
---------7788
7876
7934
NAME
Basic Salary
---------- -----------SCOTT
3000
ADAMS
1100
MILLER
1300
DESIGNATI
--------ANALYST
CLERK
CLERK
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=54
6)
1
NAME
Basic Salary
---------- -----------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ID Number
---------7788
7876
7934
NAME
Basic Salary
---------- -----------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=46
2)
1
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ID Number
---------7839
7698
7782
7566
7499
7902
7788
NAME
Basic Salary
---------- -----------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
ALLEN
1600
FORD
3000
SCOTT
3000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=7 Bytes=231
)
1
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, SUm("Basic Salary")
2 FROM Employees
3* GROUP BY Deptno
SQL> /
GROUP BY Deptno
*
ERROR at line 3:
ORA-00904: "DEPTNO": invalid identifier
SQL> ED
Wrote file afiedt.buf
1 SELECT Deisgnation, SUm("Basic Salary")
2 FROM Employees
3* GROUP BY Deisgnation
SQL> /
GROUP BY Deisgnation
*
ERROR at line 3:
ORA-00904: "DEISGNATION": invalid identifier
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DESIGNATI SUM("BASICSALARY")
--------- -----------------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=26
6)
1
2
0
1
SQL> cl scr
SQL> SELECT
2
"ID Number",
3
Name,
4
"Basic Salary" * 12
5 FROM Employees;
ID Number
---------7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
NAME
"BASICSALARY"*12
---------- ---------------KING
60000
BLAKE
34200
CLARK
29400
JONES
35700
MARTIN
15000
ALLEN
19200
TURNER
18000
JAMES
11400
WARD
15000
FORD
36000
SMITH
9600
ID Number
---------7788
7876
7934
NAME
"BASICSALARY"*12
---------- ---------------SCOTT
36000
ADAMS
13200
MILLER
15600
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=46
2)
1
SQL> SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
7
"ID Number",
Name,
TO_CHAR("Basic Salary", '99,99,999.99') Monthly,
"Basic Salary" * 12 Annual
FROM Employees
WHERE "Basic Salary" > 2500;
ID Number
---------7839
7698
7566
7902
7788
NAME
MONTHLY
ANNUAL
---------- ------------- ---------KING
5,000.00
60000
BLAKE
2,850.00
34200
JONES
2,975.00
35700
FORD
3,000.00
36000
SCOTT
3,000.00
36000
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=5 Bytes=165
)
1
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
View created.
SQL> DESC EmpInfo
Name
----------------------------------------EMPLOYEEID
NAME
DEPARTMENTID
DEPARTMENTNAME
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
NOT NULL NUMBER(2)
VARCHAR2(14)
NAME
DEPARTMENTID DEPARTMENTNAME
---------- ------------ -------------KING
10 ACCOUNTING
CLARK
10 ACCOUNTING
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7934
7566
7788
7876
7369
7902
7698
7654
7499
EMPLOYEEID
---------7844
7900
7521
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
10
20
20
20
20
20
30
30
30
ACCOUNTING
RESEARCH
RESEARCH
RESEARCH
RESEARCH
RESEARCH
SALES
SALES
SALES
NAME
DEPARTMENTID DEPARTMENTNAME
---------- ------------ -------------TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=14 Bytes=58
8)
1
2
3
4
0
1
2
3
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
View created.
SQL> DESC EmpGrades
Name
Null?
Type
----------------------------------------- -------- ---------------------------NAME
VARCHAR2(10)
BASIC
NUMBER(7,2)
GRADE
NUMBER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=1 Bytes=33)
1
0
VIEW OF 'EMPGRADES' (VIEW) (Cost=9 Card=1 Bytes=33)
2
1
SORT (ORDER BY) (Cost=9 Card=1 Bytes=59)
3
2
MERGE JOIN (Cost=8 Card=1 Bytes=59)
4
3
SORT (JOIN) (Cost=4 Card=5 Bytes=195)
5
4
TABLE ACCESS (FULL) OF 'SALGRADE' (TABLE) (Cost=3
Card=5 Bytes=195)
6
7
8
3
6
7
FILTER
SORT (JOIN) (Cost=4 Card=14 Bytes=280)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Car
d=14 Bytes=280)
SQL> cl scr
SQL>
2
3
4
5
6
7
8
View created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Type
---------------------------NUMBER
VARCHAR2(33)
SERIALNO
---------12
13
13 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=13 Bytes=40
3)
1
2
3
4
0
1
2
3
SQL> cl scr
SQL> CREATE OR REPLACE VIEW EmpAccounts
2 AS
3 SELECT
4
Ename,
5
Deptno,
6
Sal Monthly,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7
8
9
10
11
12
13
Sal * 12 Annual
FROM Emp
WHERE Deptno = (SELECT
Deptno
FROM Dept
WHERE Dname = 'ACCOUNTING')
ORDER BY Annual;
View created.
SQL> DESC EmpAccounts
Name
Null?
----------------------------------------- -------ENAME
DEPTNO
NOT NULL
MONTHLY
ANNUAL
Type
---------------------------VARCHAR2(10)
NUMBER(2)
NUMBER(7,2)
NUMBER
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=1 Bytes=46)
1
0
VIEW OF 'EMPACCOUNTS' (VIEW) (Cost=7 Card=1 Bytes=46)
2
1
SORT (ORDER BY) (Cost=7 Card=1 Bytes=33)
3
2
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 By
tes=33)
4
SQL> cl scr
SQL>
2
3
4
5
6
7
8
View created.
SQL> DESC CumSum
Name
Null?
Type
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=10 Bytes=40
0)
1
2
3
4
0
1
2
3
5
6
2
5
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT
Job
FROM Emp
WHERE Deptno IN(20, 30);
View created.
SQL> SELECT * FROM OrgDesignations;
JOB
--------ANALYST
CLERK
MANAGER
PRESIDENT
SALESMAN
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=14 Bytes=84
)
1
2
3
4
0
1
2
3
SQL> cl scr
SQL> cl scr
SQL> DESC USER_VIEWS
Name
Null?
----------------------------------------- -------VIEW_NAME
NOT NULL
TEXT_LENGTH
TEXT
TYPE_TEXT_LENGTH
TYPE_TEXT
OID_TEXT_LENGTH
OID_TEXT
VIEW_TYPE_OWNER
VIEW_TYPE
SUPERVIEW_NAME
Type
---------------------------VARCHAR2(30)
NUMBER
LONG
NUMBER
VARCHAR2(4000)
NUMBER
VARCHAR2(4000)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
2
3
FROM USER_VIEWS
WHERE VIEW_NAME = 'EMPACCOUNTS';
VIEW_NAME
TEXT
-------------------- ---------------------------------------EMPACCOUNTS
SELECT
Ename,
Deptno,
Sal Monthly,
Sal * 12 Annual
FROM Emp
WHERE Deptno =
Execution Plan
---------------------------------------------------------ERROR:
ORA-01039: insufficient privileges on underlying objects of the view
Execution Plan
---------------------------------------------------------ERROR:
ORA-01039: insufficient privileges on underlying objects of the view
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
(
DepartmentName,
MinimumSalary,
MaxSalary,
AverageSalary,
SalarySum
)
AS
SELECT
D.Dname,
MIN(E.Sal),
MAX(E.Sal),
AVG(E.Sal),
SUM(E.Sal)
FROM Emp E, Dept D
WHERE E.Deptno = D.Deptno
GROUP BY D.Dname;
View created.
SQL> DESC DeptSalSummary
Name
Null?
----------------------------------------- -------DEPARTMENTNAME
MINIMUMSALARY
MAXSALARY
AVERAGESALARY
SALARYSUM
Type
---------------------------VARCHAR2(14)
NUMBER
NUMBER
NUMBER
NUMBER
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
4
5
6
7
8
9
10
11
12
DeptName,
Place
)
AS
SELECT
Deptno,
Dname,
Loc
FROM Dept;
View created.
SQL> DESC InsertDept
Name
Null?
----------------------------------------- -------DEPTID
NOT NULL
DEPTNAME
PLACE
Type
---------------------------NUMBER(2)
VARCHAR2(14)
VARCHAR2(13)
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DEPTNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
PLACE
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
*
ERROR at line 3:
ORA-00904: "DEPTNO": invalid identifier
DEPTNO
---------10
20
30
40
50
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
CARGO
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
---------- --------- ---------- --------- ----- ----- -----KING
PRESIDENT
17-NOV-81 5000
10
BLAKE
MANAGER
7839 01-MAY-81 2850
30
CLARK
MANAGER
7839 09-JUN-81 2450
10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7566
7654
7499
7844
7900
7521
7902
7369
EMPNO
----7788
7876
7934
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
7839
7698
7698
7698
7698
7698
7566
7902
02-APR-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
2975
1250
1600
1500
950
1250
3000
800
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ---------- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
1400
300
0
500
20
30
30
30
30
30
20
20
14 rows selected.
SQL>
2
3
4
5
View created.
SQL> DESC EDept30
Name
----------------------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
ENAME
---------BLAKE
MARTIN
ALLEN
TURNER
JAMES
WARD
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ---------- --------- ----- ----- -----MANAGER
7839 01-MAY-81 2850
30
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
6 rows selected.
SQL> SELECT * FROM EDept30
2 WHERE Ename = 'JONES';
no rows selected
SQL> SELECT * FROM EDept30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ---------- --------- ----- ----- -----7698 BLAKE
MANAGER
7839 01-MAY-81 2850
30
SQL> cl scr
SQL> DESC EDept30
Name
----------------------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
5
6
View created.
SQL> INSERT INTO EDept30
2 (Empno, Ename, Sal, Job, Deptno)
3 VALUES(1236, 'SAMPLE03', 2500, 'CLERK', 20);
INSERT INTO EDept30
*
ERROR at line 1:
ORA-01402: view WITH CHECK OPTION where-clause violation
SQL> cl scr
SQL>
2
3
4
5
6
View created.
SQL> INSERT INTO EDept30
2 (Empno, Ename, Sal, Job, Deptno)
3 VALUES(1236, 'SAMPLE03', 2500, 'CLERK', 20);
(Empno, Ename, Sal, Job, Deptno)
*
ERROR at line 2:
ORA-01733: virtual column not allowed here
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> DESC Emp
Name
----------------------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
cl scr
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=87)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=87)
2
SQL> SELECT *
2 FROM Emp
3 WHERE Ename = 'JONES';
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=87)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
87)
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=87)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=87)
2
SQL> SELECT *
2 FROM Emp
3 WHERE Empno = 7566;
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=87)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=87)
2
SQL> cl scr
SQL> SELECT *
2 FROM Emp
3 WHERE Empno = 7566;
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=87)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=87)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> SELECT *
2 FROM Emp
3 WHERE Empno > 7566;
EMPNO
----7839
7698
7782
7654
7844
7900
7902
7788
7876
7934
ENAME
---------KING
BLAKE
CLARK
MARTIN
TURNER
JAMES
FORD
SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
ANALYST
7566 03-DEC-81 3000
20
ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
10 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=10 Bytes=87
0)
1
SQL> SELECT *
2 FROM Emp
3 WHERE Empno < 7566;
EMPNO
----7499
7521
7369
ENAME
---------ALLEN
WARD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 22-FEB-81 1250
500
30
CLERK
7902 17-DEC-80
800
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=3 Bytes=261
)
1
SQL>
2
SQL>
2
3
SELECT *
SELECT *
FROM Emp
WHERE Empno <> 7566;
EMPNO
----7839
7698
7782
7654
7499
7844
7900
7521
7902
7369
7788
ENAME
---------KING
BLAKE
CLARK
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
ANALYST
7566 09-DEC-82 3000
20
EMPNO
----7876
7934
ENAME
---------ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
13 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=13 Bytes=11
31)
1
SQL> SELECT *
2 FROM Emp
3 WHERE Empno = 7566 OR Empno = 7839 OR Empno = 7782;
EMPNO
----7566
7782
7839
ENAME
---------JONES
CLARK
KING
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----MANAGER
7839 02-APR-81 2975
20
MANAGER
7839 09-JUN-81 2450
10
PRESIDENT
17-NOV-81 5000
10
Execution Plan
---------------------------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1
2
0
1
INLIST ITERATOR
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 C
ard=3 Bytes=261)
SQL> SELECT *
2 FROM Emp
3 WHERE Empno IN(7566, 7839, 7782);
EMPNO
----7566
7782
7839
ENAME
---------JONES
CLARK
KING
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----MANAGER
7839 02-APR-81 2975
20
MANAGER
7839 09-JUN-81 2450
10
PRESIDENT
17-NOV-81 5000
10
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=3 Bytes=261
)
1
2
0
1
INLIST ITERATOR
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 C
ard=3 Bytes=261)
SQL> SELECT *
2 FROM Emp
3 WHERE Empno = 7566 AND Empno = 7654;
no rows selected
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=87)
1
0
FILTER
2
1
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 C
ard=1 Bytes=87)
3
SQL> SELECT *
2 FROM Emp
3 WHERE Empno = 7566 AND Ename = 'JONES';
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=87)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=87)
2
SQL> SELECT *
2 FROM Emp
3 WHERE Empno = 7566 OR Ename = 'JONES';
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
----- ---------- --------- ----- --------- ----- ----- -----7566 JONES
MANAGER
7839 02-APR-81 2975
20
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=87)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=3 Car
d=1 Bytes=87)
2
3
4
5
1
2
3
4
6
7
3
6
2 AS
3
SQL> CREATE INDEX EmpEnameJobIDX
2 ON Emp(Ename, Job);
Index created.
SQL> SELECT Ename, Sal, Deptno, Job, HireDate
2 FROM Emp
3 WHERE Ename = 'JONES';
ENAME
SAL
DEPTNO JOB
HIREDATE
---------- ---------- ---------- --------- --------JONES
2975
20 MANAGER
02-APR-81
SQL> SELECT Ename, Sal, Deptno, Job, HireDate
2 FROM Emp
3 WHERE Job = 'MANAGER';
ENAME
SAL
DEPTNO JOB
---------- ---------- ---------- --------BLAKE
2850
30 MANAGER
CLARK
2450
10 MANAGER
JONES
2975
20 MANAGER
SQL>
SQL>
2
3
HIREDATE
--------01-MAY-81
09-JUN-81
02-APR-81
ENAME
SAL
DEPTNO JOB
HIREDATE
---------- ---------- ---------- --------- --------JONES
2975
20 MANAGER
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=48)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=48)
2
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=48)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=48)
2
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
EMPNO ENAME
SAL
DEPTNO JOB
HIREDATE
---------- ---------- ---------- ---------- --------- --------7566 JONES
2975
20 MANAGER
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=61)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=61)
2
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
EMPNO ENAME
SAL
DEPTNO JOB
HIREDATE
---------- ---------- ---------- ---------- --------- --------7566 JONES
2975
20 MANAGER
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=61)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=61)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=48)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=48)
2
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=48)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=48)
2
ENAME
SAL
DEPTNO JOB
HIREDATE
---------- ---------- ---------- --------- --------JONES
2975
20 MANAGER
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=48)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=48)
2
HIREDATE
--------01-MAY-81
09-JUN-81
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=3 Bytes=144
)
1
HIREDATE
--------01-MAY-81
09-JUN-81
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=3 Bytes=144
)
1
HIREDATE
--------01-MAY-81
09-JUN-81
02-APR-81
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=3 Bytes=144
)
1
SQL> cl scr
SQL> CREATE UNIQUE INDEX EmpEnameUNQIDX
2 ON Emp(Ename);
ON Emp(Ename)
*
ERROR at line 2:
ORA-01408: such column list already indexed
Index dropped.
SQL> CREATE UNIQUE INDEX EmpEnameUNQIDX
2 ON Emp(Ename);
Index created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Job)
2 VALUES(1234, 'ADAMS', 30, 'CLERK');
INSERT INTO Emp(Empno, Ename, Deptno, Job)
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.EMPENAMEUNQIDX) violated
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT ROWID, Empno, Ename, Sal
2 FROM Emp;
ROWID
EMPNO ENAME
SAL
------------------ ---------- ---------- ---------AAAMcCAAEAAAAHPAAA
7839 KING
5000
AAAMcCAAEAAAAHPAAB
7698 BLAKE
2850
AAAMcCAAEAAAAHPAAC
7782 CLARK
2450
AAAMcCAAEAAAAHPAAD
7566 JONES
2975
AAAMcCAAEAAAAHPAAE
7654 MARTIN
1250
AAAMcCAAEAAAAHPAAF
7499 ALLEN
1600
AAAMcCAAEAAAAHPAAG
7844 TURNER
1500
AAAMcCAAEAAAAHPAAH
7900 JAMES
950
AAAMcCAAEAAAAHPAAI
7521 WARD
1250
AAAMcCAAEAAAAHPAAJ
7902 FORD
3000
AAAMcCAAEAAAAHPAAK
7369 SMITH
800
ROWID
EMPNO ENAME
SAL
------------------ ---------- ---------- ---------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
AAAMcCAAEAAAAHPAAL
AAAMcCAAEAAAAHPAAM
AAAMcCAAEAAAAHPAAN
7788 SCOTT
7876 ADAMS
7934 MILLER
3000
1100
1300
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=56
0)
1
SQL> cl scr
SQL> SELECT ROWID, Empno, Ename, Deptno
2 FROM Emp;
ROWID
EMPNO ENAME
DEPTNO
------------------ ---------- ---------- ---------AAAMcCAAEAAAAHPAAA
7839 KING
10
AAAMcCAAEAAAAHPAAB
7698 BLAKE
30
AAAMcCAAEAAAAHPAAC
7782 CLARK
10
AAAMcCAAEAAAAHPAAD
7566 JONES
20
AAAMcCAAEAAAAHPAAE
7654 MARTIN
30
AAAMcCAAEAAAAHPAAF
7499 ALLEN
30
AAAMcCAAEAAAAHPAAG
7844 TURNER
30
AAAMcCAAEAAAAHPAAH
7900 JAMES
30
AAAMcCAAEAAAAHPAAI
7521 WARD
30
AAAMcCAAEAAAAHPAAJ
7902 FORD
20
AAAMcCAAEAAAAHPAAK
7369 SMITH
20
ROWID
EMPNO ENAME
DEPTNO
------------------ ---------- ---------- ---------AAAMcCAAEAAAAHPAAL
7788 SCOTT
20
AAAMcCAAEAAAAHPAAM
7876 ADAMS
20
AAAMcCAAEAAAAHPAAN
7934 MILLER
10
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=56
0)
1
SQL> cl scr
SQL> SELECT Ename, Deptno, Sal, Comm, Sal + NVL(Comm) TotSal
2 FROM Emp
3 WHERE Sal + NVL(Comm) > 2000;
SELECT Ename, Deptno, Sal, Comm, Sal + NVL(Comm) TotSal
*
ERROR at line 1:
ORA-00909: invalid number of arguments
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
ENAME
DEPTNO
SAL
COMM
TOTSAL
---------- ---------- ---------- ---------- ---------KING
10
5000
5000
BLAKE
30
2850
2850
CLARK
10
2450
2450
JONES
20
2975
2975
MARTIN
30
1250
1400
2650
FORD
20
3000
3000
SCOTT
20
3000
3000
7 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=7 Bytes=322
)
1
MARTIN
BLAKE
JONES
FORD
SCOTT
KING
30
30
20
20
20
10
1250
2850
2975
3000
3000
5000
1400
2650
2850
2975
3000
3000
5000
7 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=7 Bytes=322
)
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=4 Bytes=80)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=4 Bytes=
80)
JONES
FORD
SCOTT
KING
2975
3000
3000
5000
35700
36000
36000
60000
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=4 Bytes=80)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=4 Bytes=80)
2
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=39)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=1 Bytes=
39)
SAL
DEPTNO JOB
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=39)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=39)
2
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=39)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=39)
2
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=39)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=2 Car
d=1 Bytes=39)
2
HIREDATE
EMPEXP
--------- ---------01-MAY-81
29
09-JUN-81
29
02-APR-81
29
20-FEB-81
29
22-FEB-81
29
17-DEC-80
29
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=6 Bytes=96)
1
0
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=6 Bytes=
96)
SQL> cl scr
SQL> DESC USER_INDEXES
Name
Null?
Type
----------------------------------------- -------- ---------------------------INDEX_NAME
NOT NULL VARCHAR2(30)
INDEX_TYPE
VARCHAR2(27)
TABLE_OWNER
NOT NULL VARCHAR2(30)
TABLE_NAME
NOT NULL VARCHAR2(30)
TABLE_TYPE
VARCHAR2(11)
UNIQUENESS
VARCHAR2(9)
COMPRESSION
VARCHAR2(8)
PREFIX_LENGTH
NUMBER
TABLESPACE_NAME
VARCHAR2(30)
INI_TRANS
NUMBER
MAX_TRANS
NUMBER
INITIAL_EXTENT
NUMBER
NEXT_EXTENT
NUMBER
MIN_EXTENTS
NUMBER
MAX_EXTENTS
NUMBER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
PCT_INCREASE
PCT_THRESHOLD
INCLUDE_COLUMN
FREELISTS
FREELIST_GROUPS
PCT_FREE
LOGGING
BLEVEL
LEAF_BLOCKS
DISTINCT_KEYS
AVG_LEAF_BLOCKS_PER_KEY
AVG_DATA_BLOCKS_PER_KEY
CLUSTERING_FACTOR
STATUS
NUM_ROWS
SAMPLE_SIZE
LAST_ANALYZED
DEGREE
INSTANCES
PARTITIONED
TEMPORARY
GENERATED
SECONDARY
BUFFER_POOL
USER_STATS
DURATION
PCT_DIRECT_ACCESS
ITYP_OWNER
ITYP_NAME
PARAMETERS
GLOBAL_STATS
DOMIDX_STATUS
DOMIDX_OPSTATUS
FUNCIDX_STATUS
JOIN_INDEX
IOT_REDUNDANT_PKEY_ELIM
DROPPED
SQL> DESC USER_IND_COLUMNS
Name
Null?
----------------------------------------- -------INDEX_NAME
TABLE_NAME
COLUMN_NAME
COLUMN_POSITION
COLUMN_LENGTH
CHAR_LENGTH
DESCEND
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
VARCHAR2(3)
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
VARCHAR2(8)
NUMBER
NUMBER
DATE
VARCHAR2(40)
VARCHAR2(40)
VARCHAR2(3)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(7)
VARCHAR2(3)
VARCHAR2(15)
NUMBER
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(1000)
VARCHAR2(3)
VARCHAR2(12)
VARCHAR2(6)
VARCHAR2(8)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(3)
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(4000)
NUMBER
NUMBER
NUMBER
VARCHAR2(4)
SQL> cl scr
SQL> SET SQLPROMPT DBASEC>
DBASEC>cl scr
DBASEC>COLUMN
DBASEC>COLUMN
DBASEC>COLUMN
DBASEC>COLUMN
DBASEC>COLUMN
DBASEC>cl scr
DBASEC>DESC TAB
Name
Null?
----------------------------------------- -------TNAME
NOT NULL
TABTYPE
CLUSTERID
Type
---------------------------VARCHAR2(30)
VARCHAR2(7)
NUMBER
AVG_SPACE_FREELIST_BLOCKS
NUM_FREELIST_BLOCKS
DEGREE
INSTANCES
CACHE
TABLE_LOCK
SAMPLE_SIZE
LAST_ANALYZED
PARTITIONED
IOT_TYPE
TEMPORARY
SECONDARY
NESTED
BUFFER_POOL
ROW_MOVEMENT
GLOBAL_STATS
USER_STATS
DURATION
SKIP_CORRUPT
MONITORING
CLUSTER_OWNER
DEPENDENCIES
COMPRESSION
DROPPED
NUMBER
NUMBER
VARCHAR2(10)
VARCHAR2(10)
VARCHAR2(5)
VARCHAR2(8)
NUMBER
DATE
VARCHAR2(3)
VARCHAR2(12)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(3)
VARCHAR2(7)
VARCHAR2(8)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(15)
VARCHAR2(8)
VARCHAR2(3)
VARCHAR2(30)
VARCHAR2(8)
VARCHAR2(8)
VARCHAR2(3)
AVG_COL_LEN
CHAR_LENGTH
CHAR_USED
V80_FMT_IMAGE
DATA_UPGRADED
HISTOGRAM
NUMBER
NUMBER
VARCHAR2(1)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(15)
Null?
-------NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(1)
NOT NULL VARCHAR2(30)
LONG
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(9)
VARCHAR2(8)
VARCHAR2(14)
VARCHAR2(9)
VARCHAR2(13)
VARCHAR2(14)
VARCHAR2(3)
VARCHAR2(4)
DATE
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(7)
VARCHAR2(14)
MAX_EXTENTS
PCT_INCREASE
PCT_THRESHOLD
INCLUDE_COLUMN
FREELISTS
FREELIST_GROUPS
PCT_FREE
LOGGING
BLEVEL
LEAF_BLOCKS
DISTINCT_KEYS
AVG_LEAF_BLOCKS_PER_KEY
AVG_DATA_BLOCKS_PER_KEY
CLUSTERING_FACTOR
STATUS
NUM_ROWS
SAMPLE_SIZE
LAST_ANALYZED
DEGREE
INSTANCES
PARTITIONED
TEMPORARY
GENERATED
SECONDARY
BUFFER_POOL
USER_STATS
DURATION
PCT_DIRECT_ACCESS
ITYP_OWNER
ITYP_NAME
PARAMETERS
GLOBAL_STATS
DOMIDX_STATUS
DOMIDX_OPSTATUS
FUNCIDX_STATUS
JOIN_INDEX
IOT_REDUNDANT_PKEY_ELIM
DROPPED
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
VARCHAR2(3)
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
NUMBER
VARCHAR2(8)
NUMBER
NUMBER
DATE
VARCHAR2(40)
VARCHAR2(40)
VARCHAR2(3)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(7)
VARCHAR2(3)
VARCHAR2(15)
NUMBER
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(1000)
VARCHAR2(3)
VARCHAR2(12)
VARCHAR2(6)
VARCHAR2(8)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(3)
Null?
Type
-------- ---------------------------NOT NULL VARCHAR2(30)
NUMBER
NUMBER
NOT NULL NUMBER
VARCHAR2(1)
VARCHAR2(1)
NOT NULL NUMBER
NOT NULL NUMBER
DBASEC>cl scr
DBASEC>SELECT * FROM TAB;
no rows selected
DBASEC>DESC USER_OBJECTS
Name
Null?
Type
----------------------------------------- -------- ---------------------------OBJECT_NAME
VARCHAR2(128)
SUBOBJECT_NAME
VARCHAR2(30)
OBJECT_ID
NUMBER
DATA_OBJECT_ID
NUMBER
OBJECT_TYPE
VARCHAR2(19)
CREATED
DATE
LAST_DDL_TIME
DATE
TIMESTAMP
VARCHAR2(19)
STATUS
VARCHAR2(7)
TEMPORARY
VARCHAR2(1)
GENERATED
VARCHAR2(1)
SECONDARY
VARCHAR2(1)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
DBASEC>SELECT * FROM SCOTT.Dept;
SELECT * FROM SCOTT.Dept
*
ERROR at line 1:
ORA-00942: table or view does not exist
DBASEC>SPOOL OFF
SQL> SET SQLPROMPT DBASEC>
DBASEC>cl scr
DBASEC>DESC USER_TAB_PRIVS_RECD
Name
----------------------------------------OWNER
TABLE_NAME
GRANTOR
PRIVILEGE
GRANTABLE
HIERARCHY
Null?
-------NOT NULL
NOT NULL
NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(40)
VARCHAR2(3)
VARCHAR2(3)
DBASEC>SELECT
2
OWNER,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_RECD;
OWNER
Table
GRANTOR
PRIVILEGE
--------------- --------------- --------------- --------------SCOTT
EMP
SCOTT
SELECT
DBASEC>SELECT * FROM Emp;
SELECT * FROM Emp
*
ERROR at line 1:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
DBASEC>SELECT
2
OWNER,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_RECD;
OWNER
--------------SCOTT
SCOTT
SCOTT
Table
--------------DEPT
DEPT
EMP
GRANTOR
--------------SCOTT
SCOTT
SCOTT
PRIVILEGE
--------------DELETE
SELECT
SELECT
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
LOC
------------NEW YORK
DALLAS
CHICAGO
DNAME
-------------ACCOUNTING
RESEARCH
SALES
LOC
------------NEW YORK
DALLAS
CHICAGO
DBASEC>ROLLBACK;
Rollback complete.
DBASEC>SELECT * FROM SCOTT.Dept;
DEPTNO
-----10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
DBASEC>ROLLBACK;
Rollback complete.
DBASEC>SELECT * FROM SCOTT.Dept;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DEPTNO
-----10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DBASEC>SELECT
2
OWNER,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_RECD;
no rows selected
DBASEC>cl scr
DBASEC>SELECT
2
OWNER,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_RECD;
no rows selected
DBASEC>SELECT * FROM SCOTT.Emp;
SELECT * FROM SCOTT.Emp
*
ERROR at line 1:
ORA-00942: table or view does not exist
DBASEC>CONN HR/HR
Connected.
DBASEC>CONN DBASEC/DBASEC
Connected.
DBASEC>SELECT * FROM SCOTT.Emp;
EMPNO
----7839
7698
7782
7566
7654
ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
---------- --------- ----- --------- ----- ----- -----KING
PRESIDENT
17-NOV-81 5000
10
BLAKE
MANAGER
7839 01-MAY-81 2850
30
CLARK
MANAGER
7839 09-JUN-81 2450
10
JONES
MANAGER
7839 02-APR-81 2975
20
MARTIN
SALESMAN
7698 28-SEP-81 1250 1400
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7499
7844
7900
7521
7902
7369
EMPNO
----7788
7876
7934
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
7698
7698
7698
7698
7566
7902
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
1600
1500
950
1250
3000
800
300
0
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
500
30
30
30
30
20
20
14 rows selected.
DBASEC>SELECT * FROM SCOTT.Dept;
SELECT * FROM SCOTT.Dept
*
ERROR at line 1:
ORA-00942: table or view does not exist
DNAME
-------------SHIPPING
ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------CHENNAI
NEW YORK
DALLAS
CHICAGO
BOSTON
DBASEC>SELECT
2
USERNAME,
3
GRANTED_ROLE
4 FROM USER_ROLE_PRIVS;
USERNAME
GRANTED_ROLE
------------------------------ -----------------------------DBASEC
EMPSEC
DBASEC>SELECT
2
ROLE,
3
PRIVILEGE
4 FROM ROLE_TAB_PRIVS;
no rows selected
DBASEC>cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
DBASEC>SELECT * FROM Employee;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DBASEC>DESC Employee
Name
----------------------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL> SET SQLPROMPT SCOTT
SCOTTSET SQLPROMPT SCOTT>
SCOTT>cl scr
SCOTT>CREATE USER DBASEC
2
IDENTIFIED BY DBASEC;
IDENTIFIED BY DBASEC
*
ERROR at line 2:
ORA-01031: insufficient privileges
SCOTT>COLUMN
SCOTT>COLUMN
SCOTT>COLUMN
SCOTT>COLUMN
SCOTT>COLUMN
SCOTT>cl scr
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SCOTT>GRANT SELECT
2
ON Emp
3
TO DBASEC;
Grant succeeded.
SCOTT>SPOOL OFF
SQL> SET SQLPROMPT SCOTT>
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT>cl scr
SCOTT>DESC USER_TAB_PRIVS_MADE
Name
----------------------------------------GRANTEE
TABLE_NAME
GRANTOR
PRIVILEGE
GRANTABLE
HIERARCHY
Null?
-------NOT NULL
NOT NULL
NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(40)
VARCHAR2(3)
VARCHAR2(3)
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
---------- --------- ----- --------- ----- ----- -----SCOTT
ANALYST
7566 09-DEC-82 3000
20
ADAMS
CLERK
7788 12-JAN-83 1100
20
MILLER
CLERK
7782 23-JAN-82 1300
10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SCOTT>GRANT SELECT
2
ON Emp
3
TO DBASEC;
Grant succeeded.
SCOTT>SELECT
2
GRANTEE,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_MADE;
GRANTEE
Table
GRANTOR
PRIVILEGE
--------------- --------------- --------------- --------------DBASEC
EMP
SCOTT
SELECT
SCOTT>GRANT SELECT, DELETE
2
ON Dept
3
TO DBASEC;
Grant succeeded.
SCOTT>SELECT
2
GRANTEE,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_MADE;
GRANTEE
--------------DBASEC
DBASEC
DBASEC
Table
--------------DEPT
EMP
DEPT
GRANTOR
--------------SCOTT
SCOTT
SCOTT
PRIVILEGE
--------------SELECT
SELECT
DELETE
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SCOTT>ROLLBACK;
Rollback complete.
SCOTT>cl scr
SCOTT>GRANT INSERT
2
ON Dept
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
TO DBASEC;
Grant succeeded.
SCOTT>SELECT * FROM Dept;
DEPTNO
-----10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------SHIPPING
ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------CHENNAI
NEW YORK
DALLAS
CHICAGO
BOSTON
SCOTT>COMMIT;
Commit complete.
SCOTT>REVOKE SELECT
2
ON Emp
3
FROM DBASEC;
Revoke succeeded.
SCOTT>REVOKE SELECT, INSERT, DELETE
2
ON Dept
3
FROM DBASEC;
Revoke succeeded.
SCOTT>cl scr
SCOTT>SELECT
2
GRANTEE,
3
TABLE_NAME "Table",
4
GRANTOR,
5
PRIVILEGE
6 FROM USER_TAB_PRIVS_MADE;
no rows selected
SCOTT>cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(3)
SCOTT>SELECT
2
USERNAME,
3
GRANTED_ROLE
4 FROM USER_ROLE_PRIVS;
USERNAME
-----------------------------SCOTT
SCOTT
SCOTT
GRANTED_ROLE
-----------------------------CONNECT
EMPSEC
RESOURCE
SCOTT>DESC ROLE_SYS_PRIVS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Name
----------------------------------------ROLE
PRIVILEGE
ADMIN_OPTION
Null?
-------NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(40)
VARCHAR2(3)
PRIVILEGE
-------------------CREATE VIEW
CREATE TABLE
ALTER SESSION
CREATE CLUSTER
CREATE SESSION
CREATE SYNONYM
CREATE SEQUENCE
CREATE DATABASE LINK
CREATE TYPE
CREATE TABLE
CREATE CLUSTER
ROLE
---------RESOURCE
RESOURCE
RESOURCE
RESOURCE
RESOURCE
PRIVILEGE
-------------------CREATE TRIGGER
CREATE OPERATOR
CREATE SEQUENCE
CREATE INDEXTYPE
CREATE PROCEDURE
16 rows selected.
SCOTT>DESC ROLE_TAB_PRIVS
Name
----------------------------------------ROLE
OWNER
TABLE_NAME
COLUMN_NAME
PRIVILEGE
GRANTABLE
Null?
-------NOT NULL
NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
VARCHAR2(30)
NOT NULL VARCHAR2(40)
VARCHAR2(3)
SCOTT>SELECT
2
ROLE,
3
PRIVILEGE
4 FROM ROLE_TAB_PRIVS;
ROLE
---------EMPSEC
EMPSEC
PRIVILEGE
-------------------UPDATE
SELECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SCOTT>GRANT SELECT
2
ON Employee
3
TO DBASEC;
Grant succeeded.
SCOTT>CREATE PUBLIC SYNONYM Employee
2
FOR SCOTT.Emp;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DEPTNO
SUM(SAL)
------ ---------10
8750
20
10875
30
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
0
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=13)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=182)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
0
1
SORT (AGGREGATE)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=182)
3
4
0
3
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=14 Bytes=54
6)
1
2
3
4
5
0
1
2
3
4
SQL>
2
3
4
5
6
DEPTNO
SALSUM
------ ---------10
8750
20
10875
30
9400
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=15 Bytes=37
7)
1
2
3
4
0
1
2
3
5
6
2
5
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
0
1
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SQL>
3* GROUP BY ROLLUP(Ename)
SQL> /
ENAME
SUM(SAL)
---------- ---------ADAMS
1100
ALLEN
1600
BLAKE
2850
CLARK
2450
FORD
3000
JAMES
950
JONES
2975
KING
5000
MARTIN
1250
MILLER
1300
SCOTT
3000
ENAME
SUM(SAL)
---------- ---------SMITH
800
TURNER
1500
WARD
1250
29025
15 rows selected.
SQL> cl scr
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY ROLLUP(Deptno);
DEPTNO
SUM(SAL)
---------- ---------10
8750
20
10875
30
9400
29025
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
JOB
SUM(SAL)
--------- ---------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
29025
6 rows selected.
SQL> cl scr
SQL>
SQL>
2
3
4
5
DEPTNO
--------------10
20
30
All Departments
AVGSAL
---------2916.66667
2175
1566.66667
2073.21429
SQL> cl scr
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, Job;
DEPTNO
---------##########
##########
##########
##########
##########
##########
##########
##########
##########
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> COLUMN Deptno
SQL> /
DEPTNO
-----10
10
10
20
20
20
30
30
30
FORMAT 999
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
29025
13 rows selected.
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, Job;
DEPTNO
-----10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SUM(SAL)
------ ---------10
8750
20
10875
30
9400
SQL> SELECT SUM(Sal)
2 FROM Emp;
SUM(SAL)
---------29025
SQL>
SQL>
2
3
DEPTNO
-----10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
29025
13 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
SQL> cl scr
SQL>
SQL>
2
3
4
5
6
DEPTNO
--------------10
10
10
10
20
20
20
20
30
30
30
JOBS
SALARY
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
All Jobs
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
All Jobs
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO
--------------30
All Departments
JOBS
SALARY
--------- ---------All Jobs
9400
All Jobs
29025
13 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
SQL> cl scr
SQL> SELECT
2
TO_CHAR(HireDate, 'YYYY') "Year",
3
SUM(Sal) SumSal
4 FROM Emp
5 GROUP BY ROLLUP(TO_CHAR(HireDate, 'YYYY'));
Year
SUMSAL
---- ---------1980
800
1981
22825
1982
4300
1983
1100
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=30
8)
1
2
0
1
SQL> cl scr
SQL> SET AUTOTRACE OFF EXPLIAN
SP2-0158: unknown SET option "EXPLIAN"
SQL> SET AUTOTRACE OFF EXPLAIN
SQL> cl scr
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY ROLLUP(Deptno, Job);
DEPTNO
---------##########
##########
##########
##########
##########
##########
##########
##########
##########
##########
##########
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
---------- --------- ---------##########
9400
29025
13 rows selected.
SQL> COLUMN DEPTNO FORMAT 99
SQL> /
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
29025
13 rows selected.
SQL>
2
3
4
5
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
SALARY
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
ANALYST
6000
CLERK
1900
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SALARY
------ --------- ---------30
9400
ANALYST
6000
CLERK
4150
MANAGER
PRESIDENT
SALESMAN
8275
5000
5600
29025
18 rows selected.
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, Job;
DEPTNO
-----10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SUM(SAL)
------ ---------10
8750
20
10875
30
9400
SQL>
2
SQL>
2
3
JOB
SUM(SAL)
--------- ---------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
SQL> SELECT SUM(Sal)
2 FROm Emp;
SUM(SAL)
---------29025
SQL> cl scr
DEPTNO
GRPBIT
SUM(SAL)
------ ---------- ---------10
0
8750
20
0
10875
30
0
9400
1
29025
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, GROUPING(Deptno) GrpBIT, SUM(Sal)
2 FROM Emp
3 GROUP BY ROLLUP(Deptno)
4* HAVING GROUPING(Deptno) IN(&GrpBit1, &GrpBit2)
SQL> /
Enter value for grpbit1: 0
Enter value for grpbit2: 0
old
4: HAVING GROUPING(Deptno) IN(&GrpBit1, &GrpBit2)
new
4: HAVING GROUPING(Deptno) IN(0, 0)
DEPTNO
GRPBIT
SUM(SAL)
------ ---------- ---------10
0
8750
20
0
10875
30
0
9400
SQL> /
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
grpbit1: 0
grpbit2: 1
GROUPING(Deptno) IN(&GrpBit1, &GrpBit2)
GROUPING(Deptno) IN(0, 1)
DEPTNO
GRPBIT
SUM(SAL)
------ ---------- ---------10
0
8750
20
0
10875
30
0
9400
1
SQL> /
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
29025
grpbit1: 1
grpbit2: 1
GROUPING(Deptno) IN(&GrpBit1, &GrpBit2)
GROUPING(Deptno) IN(1, 1)
DEPTNO
GRPBIT
SUM(SAL)
------ ---------- ---------1
29025
SQL> cl scr
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, Job;
DEPTNO
-----10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO
SUM(SAL)
------ ---------10
8750
20
10875
30
9400
SQL> SELECT Job, SUm(Sal)
2 FROM Emp
3 GROUP BY Job;
JOB
SUM(SAL)
--------- ---------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
SQL> SELECT SUM(Sal)
2 FROM Emp;
SUM(SAL)
---------29025
SQL>
2
3
4
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
ANALYST
6000
CLERK
1900
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
29025
18 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, Job, SUM(Sal)
2 FROM EMp
3 GROUP BY CUBE(Deptno, Job)
4 HAVING GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
5* ORDER BY Deptno
SQL> /
Enter value for gcolumn: Deptno
Enter value for grpbit1: 0
Enter value for grpbit2: 0
old
4: HAVING GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
new
4: HAVING GROUPING(Deptno) IN(0, 0)
DEPTNO
-----10
10
10
10
20
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
ANALYST
6000
20
20
20
30
30
30
CLERK
MANAGER
1900
2975
10875
950
2850
5600
CLERK
MANAGER
SALESMAN
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
12 rows selected.
SQL> /
Enter value for
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
gcolumn: Deptno
grpbit1: 1
grpbit2: 1
GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
GROUPING(Deptno) IN(1, 1)
DEPTNO JOB
SUM(SAL)
------ --------- ---------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
29025
6 rows selected.
SQL> /
Enter value for
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
gcolumn: Deptno
grpbit1: 0
grpbit2: 1
GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
GROUPING(Deptno) IN(0, 1)
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
ANALYST
6000
CLERK
1900
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
ANALYST
6000
CLERK
4150
MANAGER
PRESIDENT
SALESMAN
8275
5000
5600
29025
18 rows selected.
SQL> /
Enter value for
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
DEPTNO
-----10
10
10
20
20
20
30
30
30
gcolumn: Job
grpbit1: 0
grpbit2: 0
GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
GROUPING(Job) IN(0, 0)
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
SALESMAN
5600
MANAGER
2850
CLERK
4150
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------PRESIDENT
5000
MANAGER
8275
ANALYST
6000
14 rows selected.
SQL> /
Enter value for
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
gcolumn: Job
grpbit1: 1
grpbit2: 1
GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
GROUPING(Job) IN(1, 1)
DEPTNO JOB
SUM(SAL)
------ --------- ---------10
8750
20
10875
30
9400
29025
SQL> /
Enter value for
Enter value for
Enter value for
old
4: HAVING
new
4: HAVING
gcolumn: Job
grpbit1: 1
grpbit2: 0
GROUPING(&GColumn) IN(&GrpBIT1, &GrpBit2)
GROUPING(Job) IN(1, 0)
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
ANALYST
6000
CLERK
1900
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
29025
18 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
ENAME
---------KING
CLARK
MILLER
JONES
SCOTT
ADAMS
SMITH
FORD
BLAKE
MARTIN
ALLEN
JOB
SAL DEPTNO DEPARTMENT
--------- ---------- ------ ---------PRESIDENT
5000
10 ACCOUNTING
MANAGER
2450
10 ACCOUNTING
CLERK
1300
10 ACCOUNTING
MANAGER
2975
20 RESEARCH
ANALYST
3000
20 RESEARCH
CLERK
1100
20 RESEARCH
CLERK
800
20 RESEARCH
ANALYST
3000
20 RESEARCH
MANAGER
2850
30 SALES
SALESMAN
1250
30 SALES
SALESMAN
1600
30 SALES
ENAME
---------TURNER
JAMES
WARD
JOB
SAL DEPTNO DEPARTMENT
--------- ---------- ------ ---------SALESMAN
1500
30 SALES
CLERK
950
30 SALES
SALESMAN
1250
30 SALES
14 rows selected.
SQL> SELECT INITCAP(Ename)||' Takes Care of '||
2 DECODE(Job,
3
'ANALYST', 'Analysis',
4
'CLERK', 'Filing',
5
'MANAGER', 'Managing',
6
'PRESIDENT', 'Administration',
7
'SALESMAN', 'Sales') Responsibilities
8 FROM Emp;
RESPONSIBILITIES
--------------------------------------King Takes Care of Administration
Blake Takes Care of Managing
Clark Takes Care of Managing
Jones Takes Care of Managing
Martin Takes Care of Sales
Allen Takes Care of Sales
Turner Takes Care of Sales
James Takes Care of Filing
Ward Takes Care of Sales
Ford Takes Care of Analysis
Smith Takes Care of Filing
RESPONSIBILITIES
--------------------------------------Scott Takes Care of Analysis
Adams Takes Care of Filing
Miller Takes Care of Filing
14 rows selected.
SQL>
2
3
4
5
6
7
SELECT
ROWNUM, DECODE(ROWNUM,
1, 'One',
2, 'Two',
3, 'Three') Spell
FROM Emp
WHERE ROWNUM <= 4;
ROWNUM
---------1
2
3
4
SPELL
----One
Two
Three
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
SELECT
ROWNUM, DECODE(ROWNUM,
1, 'One',
2, 'Two',
3, 'Three',
6
'Donot Know') Spell
7 FROM Emp
8* WHERE ROWNUM <= &GiveVal
SQL> /
Enter value for giveval: 3
old
8: WHERE ROWNUM <= &GiveVal
new
8: WHERE ROWNUM <= 3
ROWNUM
---------1
2
3
SPELL
---------One
Two
Three
SQL> /
Enter value for giveval: 6
old
8: WHERE ROWNUM <= &GiveVal
new
8: WHERE ROWNUM <= 6
ROWNUM
---------1
2
3
4
5
6
SPELL
---------One
Two
Three
Donot Know
Donot Know
Donot Know
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 ROWNUM "S.No", DECODE(ROWNUM,
3
1, 'One',
4
2, 'Two',
5
3, 'Three',
6
'Donot Know') Spell
7 FROM Emp
8* WHERE ROWNUM <= &GiveVal
SQL> /
Enter value for giveval: 4
old
8: WHERE ROWNUM <= &GiveVal
new
8: WHERE ROWNUM <= 4
S.No
---------1
2
3
4
SPELL
---------One
Two
Three
Donot Know
SQL> cl scr
SQL> SELECT Ename, Job,
2 DECODE(Job,
3
4
5
6
7
8
9
'CLERK', 'E',
'SALESMAN', 'D',
'ANALYST', 'C',
'MANAGER', 'B',
'PRESIDENT', 'A',
'O') Grades
FROM EMP ORDER BY JOB;
ENAME
---------FORD
SCOTT
JAMES
SMITH
MILLER
ADAMS
BLAKE
CLARK
JONES
KING
MARTIN
JOB
--------ANALYST
ANALYST
CLERK
CLERK
CLERK
CLERK
MANAGER
MANAGER
MANAGER
PRESIDENT
SALESMAN
G
C
C
E
E
E
E
B
B
B
A
D
ENAME
---------ALLEN
WARD
TURNER
JOB
--------SALESMAN
SALESMAN
SALESMAN
G
D
D
D
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
ENAME
---------FORD
SCOTT
SMITH
JAMES
JOB
--------ANALYST
ANALYST
CLERK
CLERK
G DEPTNO DEPARTMENT
SAL
GRADE
- ------ ---------- ---------- ---------C
20 RESEARCH
3000
4
C
20 RESEARCH
3000
4
E
20 RESEARCH
800
1
E
30 SALES
950
1
ADAMS
MILLER
CLARK
BLAKE
JONES
KING
MARTIN
CLERK
CLERK
MANAGER
MANAGER
MANAGER
PRESIDENT
SALESMAN
E
E
B
B
B
A
D
20
10
10
30
20
10
30
RESEARCH
ACCOUNTING
ACCOUNTING
SALES
RESEARCH
ACCOUNTING
SALES
1100
1300
2450
2850
2975
5000
1250
1
2
4
4
4
5
2
ENAME
---------WARD
TURNER
ALLEN
JOB
--------SALESMAN
SALESMAN
SALESMAN
G DEPTNO DEPARTMENT
SAL
GRADE
- ------ ---------- ---------- ---------D
30 SALES
1250
2
D
30 SALES
1500
3
D
30 SALES
1600
3
14 rows selected.
SQL> SET AUTOTRACE ON EXPLAIN
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15*
SQL>
ENAME
---------FORD
SCOTT
SMITH
JAMES
ADAMS
MILLER
CLARK
BLAKE
JONES
KING
MARTIN
JOB
--------ANALYST
ANALYST
CLERK
CLERK
CLERK
CLERK
MANAGER
MANAGER
MANAGER
PRESIDENT
SALESMAN
G DEPTNO DNAME
SAL
GRADE
- ------ -------------- ---------- ---------C
20 RESEARCH
3000
4
C
20 RESEARCH
3000
4
E
20 RESEARCH
800
1
E
30 SALES
950
1
E
20 RESEARCH
1100
1
E
10 ACCOUNTING
1300
2
B
10 ACCOUNTING
2450
4
B
30 SALES
2850
4
B
20 RESEARCH
2975
4
A
10 ACCOUNTING
5000
5
D
30 SALES
1250
2
ENAME
---------WARD
TURNER
ALLEN
JOB
--------SALESMAN
SALESMAN
SALESMAN
G DEPTNO DNAME
SAL
GRADE
- ------ -------------- ---------- ---------D
30 SALES
1250
2
D
30 SALES
1500
3
D
30 SALES
1600
3
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=1 Bytes=10
0)
1
2
3
4
5
0
1
2
3
4
6
7
8
3
6
7
FILTER
SORT (JOIN) (Cost=4 Card=14 Bytes=546)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Car
d=14 Bytes=546)
10
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
ENAME
---------FORD
SCOTT
SMITH
JAMES
ADAMS
MILLER
CLARK
JOB
--------ANALYST
ANALYST
CLERK
CLERK
CLERK
CLERK
MANAGER
G DEPTNO DEPARTMENT
SAL
GRADE
- ------ ---------- ---------- ---------C
20 RESEARCH
3000
4
C
20 RESEARCH
3000
4
E
20 RESEARCH
800
1
E
30 SALES
950
1
E
20 RESEARCH
1100
1
E
10 ACCOUNTING
1300
2
B
10 ACCOUNTING
2450
4
BLAKE
JONES
KING
MARTIN
MANAGER
MANAGER
PRESIDENT
SALESMAN
B
B
A
D
30
20
10
30
SALES
RESEARCH
ACCOUNTING
SALES
2850
2975
5000
1250
4
4
5
2
ENAME
---------WARD
TURNER
ALLEN
JOB
--------SALESMAN
SALESMAN
SALESMAN
G DEPTNO DEPARTMENT
SAL
GRADE
- ------ ---------- ---------- ---------D
30 SALES
1250
2
D
30 SALES
1500
3
D
30 SALES
1600
3
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=1 Bytes=78)
1
0
SORT (ORDER BY) (Cost=9 Card=1 Bytes=78)
2
1
MERGE JOIN (Cost=8 Card=1 Bytes=78)
3
2
SORT (JOIN) (Cost=4 Card=5 Bytes=195)
4
3
TABLE ACCESS (FULL) OF 'SALGRADE' (TABLE) (Cost=3 Ca
rd=5 Bytes=195)
5
6
7
2
5
6
FILTER
SORT (JOIN) (Cost=4 Card=14 Bytes=546)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=
14 Bytes=546)
SQL> cl scr
SQL> SELECT Ename, Job,
2 DECODE(MGR,
3
7566, (SELECT Ename
4
FROM Emp
5
WHERE Empno =
6
7698, (SELECT Ename
7
FROM Emp
8
WHERE Empno =
9
7782, (SELECT Ename
10
FROM Emp
11
WHERE Empno =
12
7788, (SELECT Ename
13
FROM Emp
14
WHERE Empno =
15
7839, (SELECT Ename
16
FROM Emp
17
WHERE Empno =
18
7902, (SELECT Ename
19
FROM Emp
20
WHERE Empno =
21
'Do Not Know') Manager,
22 DECODE(Job,
23
'CLERK', 'E',
24
'SALESMAN', 'D',
7566),
7698),
7782),
7788),
7839),
7902),
25
26
27
28
29
30
31
32
33
34
35
36
37
38
'ANALYST', 'C',
'MANAGER', 'B',
'PRESIDENT', 'A',
'O') Grades, Deptno,
DECODE(Deptno,
10, 'ACCOUNTING',
20, 'RESEARCH',
30 , 'SALES',
40 , 'OPERATIONS',
'OTHER') Departments,
Sal, Grade
FROM EMP E, Salgrade S
WHERE Sal BETWEEN LoSal AND HiSal
ORDER BY JOB;
ENAME
---------FORD
SCOTT
SMITH
JAMES
ADAMS
MILLER
CLARK
BLAKE
JONES
KING
MARTIN
JOB
--------ANALYST
ANALYST
CLERK
CLERK
CLERK
CLERK
MANAGER
MANAGER
MANAGER
PRESIDENT
SALESMAN
MANAGER
----------JONES
JONES
FORD
BLAKE
SCOTT
CLARK
KING
KING
KING
Do Not Know
BLAKE
G DEPTNO DEPARTMENT
SAL
GRADE
- ------ ---------- ---------- ---------C
20 RESEARCH
3000
4
C
20 RESEARCH
3000
4
E
20 RESEARCH
800
1
E
30 SALES
950
1
E
20 RESEARCH
1100
1
E
10 ACCOUNTING
1300
2
B
10 ACCOUNTING
2450
4
B
30 SALES
2850
4
B
20 RESEARCH
2975
4
A
10 ACCOUNTING
5000
5
D
30 SALES
1250
2
ENAME
---------WARD
TURNER
ALLEN
JOB
--------SALESMAN
SALESMAN
SALESMAN
MANAGER
----------BLAKE
BLAKE
BLAKE
G DEPTNO DEPARTMENT
SAL
GRADE
- ------ ---------- ---------- ---------D
30 SALES
1250
2
D
30 SALES
1500
3
D
30 SALES
1600
3
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=9 Card=1 Bytes=91)
1
0
TABLE ACCESS (BY INDEX ROWID) OF 'EMP' (TABLE) (Cost=1 Car
d=1 Bytes=20)
2
) (Cost=1 Card=1)
7
10
11
12
11
13
14
15
16
0
13
14
15
17
18
19
14
17
18
FILTER
SORT (JOIN) (Cost=4 Card=14 Bytes=728)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=
14 Bytes=728)
SQL> cl scr
SQL>
2
3
4
SELECT
TO_CHAR(HireDate, 'YYYY') Year, COUNT(*) EmpCnt
FROM Emp
GROUP BY ROLLUP(TO_CHAR(HireDate, 'YYYY'));
YEAR
EMPCNT
---- ---------1980
1
1981
10
1982
2
1983
1
14
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=12
6)
1
2
0
1
es=126)
SQL> SELECT
2
SUM(DECODE(TO_CHAR(HireDate,
3
1980, 1, 0)) "1980" ,
4
SUM(DECODE(TO_CHAR(HireDate,
5
1981, 1, 0)) "1981" ,
6
SUM(DECODE(TO_CHAR(HireDate,
7
1982, 1, 0)) "1982" ,
8
SUM(DECODE(TO_CHAR(HireDate,
9
1983, 1, 0)) "1983",
10 COUNT(*) Total
11 FROM Emp;
'YYYY'),
'YYYY'),
'YYYY'),
'YYYY'),
1980
1981
1982
1983
TOTAL
---------- ---------- ---------- ---------- ---------1
10
2
1
14
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=9)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=126)
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
SELECT
COUNT(DECODE(TO_CHAR(HireDate,
1980, 1, 0)) "1980" ,
COUNT(DECODE(TO_CHAR(HireDate,
1981, 1, 0)) "1981" ,
COUNT(DECODE(TO_CHAR(HireDate,
1982, 1, 0)) "1982" ,
COUNT(DECODE(TO_CHAR(HireDate,
1983, 1, 0)) "1983",
COUNT(*) Total
FROM Emp
/
'YYYY'),
'YYYY'),
'YYYY'),
'YYYY'),
1980
1981
1982
1983
TOTAL
---------- ---------- ---------- ---------- ---------14
14
14
14
14
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=9)
1
0
SORT (AGGREGATE)
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
SELECT
COUNT(DECODE(TO_CHAR(HireDate,
1980, 1, NULL)) "1980" ,
COUNT(DECODE(TO_CHAR(HireDate,
1981, 1, NULL)) "1981" ,
COUNT(DECODE(TO_CHAR(HireDate,
1982, 1, NULL)) "1982" ,
COUNT(DECODE(TO_CHAR(HireDate,
1983, 1, NULL)) "1983",
COUNT(*) Total
FROM Emp
/
'YYYY'),
'YYYY'),
'YYYY'),
'YYYY'),
1980
1981
1982
1983
TOTAL
---------- ---------- ---------- ---------- ---------1
10
2
1
14
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=9)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=126)
SQL> cl scr
SQL> SELECT Ename, Job, Sal,
2 DECODE(Job,
3
'ANALYST', Sal * 1.1,
4
'CLERK', Sal * 1.15,
5
'MANAGER', Sal * 1.2,
6
Sal) "REVISED SALARY "
7 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
JOB
SAL REVISED SALARY
--------- ---------- --------------PRESIDENT
5000
5000
MANAGER
2850
3420
MANAGER
2450
2940
MANAGER
2975
3570
SALESMAN
1250
1250
SALESMAN
1600
1600
SALESMAN
1500
1500
CLERK
950
1092.5
WARD
FORD
SMITH
SALESMAN
ANALYST
CLERK
1250
3000
800
1250
3300
920
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL REVISED SALARY
--------- ---------- --------------ANALYST
3000
3300
CLERK
1100
1265
CLERK
1300
1495
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
SAL REVISED SALARY Status
--------- ---------- -------------- ------PRESIDENT
5000
5000 Sorry!
MANAGER
2850
3420 Revised
MANAGER
2450
2940 Revised
MANAGER
2975
3570 Revised
SALESMAN
1250
1250 Sorry!
SALESMAN
1600
1600 Sorry!
SALESMAN
1500
1500 Sorry!
CLERK
950
1092.5 Revised
SALESMAN
1250
1250 Sorry!
ANALYST
3000
3300 Revised
CLERK
800
920 Revised
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL REVISED SALARY
--------- ---------- -------------ANALYST
3000
3300
CLERK
1100
1265
CLERK
1300
1495
Status
------Revised
Revised
Revised
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
ENAME
JOB
SAL
---------- --------- ---------REVISED SALARY
------------------------------------------------KING
PRESIDENT
5000
5000 Sorry!
BLAKE
MANAGER
3420 Revised.
2850
CLARK
MANAGER
2940 Revised.
2450
ENAME
JOB
SAL
---------- --------- ---------REVISED SALARY
------------------------------------------------JONES
MANAGER
2975
3570 Revised.
MARTIN
SALESMAN
1250 Sorry!
1250
ALLEN
SALESMAN
1600 Sorry!
1600
ENAME
JOB
SAL
---------- --------- ----------
REVISED SALARY
------------------------------------------------TURNER
SALESMAN
1500
1500 Sorry!
JAMES
CLERK
1092.5 Revised.
WARD
SALESMAN
1250 Sorry!
950
1250
ENAME
JOB
SAL
---------- --------- ---------REVISED SALARY
------------------------------------------------FORD
ANALYST
3000
3300 Revised.
SMITH
CLERK
920 Revised.
SCOTT
ANALYST
3300 Revised.
800
3000
ENAME
JOB
SAL
---------- --------- ---------REVISED SALARY
------------------------------------------------ADAMS
CLERK
1100
1265 Revised.
MILLER
CLERK
1495 Revised.
1300
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
SALESMAN
CLERK
SALESMAN
ANALYST
CLERK
2850
2450
2975
1250
1600
1500
950
1250
3000
800
3420 Revised.
2940 Revised.
3570 Revised.
1250 Sorry!
1600 Sorry!
1500 Sorry!
1092.5 Revised.
1250 Sorry!
3300 Revised.
920 Revised.
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL REVISED SALARY
--------- ---------- ------------------------ANALYST
3000 3300 Revised.
CLERK
1100 1265 Revised.
CLERK
1300 1495 Revised.
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
JOB
SAL REVISED SALARY Extra Amount
--------- ---------- -------------- -----------PRESIDENT
5000
##########
0
MANAGER
2850
##########
570
MANAGER
2450
##########
490
MANAGER
2975
##########
595
SALESMAN
1250
##########
0
SALESMAN
1600
##########
0
SALESMAN
1500
##########
0
CLERK
950
##########
142.5
SALESMAN
1250
##########
0
Status
------Sorry!
Revised
Revised
Revised
Sorry!
Sorry!
Sorry!
Revised
Sorry!
FORD
SMITH
ANALYST
CLERK
3000
800
##########
##########
300 Revised
120 Revised
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL REVISED SALARY Extra Amount
--------- ---------- -------------- -----------ANALYST
3000
##########
300
CLERK
1100
##########
165
CLERK
1300
##########
195
Status
------Revised
Revised
Revised
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
JOB
SAL REVISED SALARY Extra Amount
--------- ---------- -------------- -----------PRESIDENT
5000
5000
0
MANAGER
2850
3420
570
MANAGER
2450
2940
490
MANAGER
2975
3570
595
SALESMAN
1250
1250
0
SALESMAN
1600
1600
0
SALESMAN
1500
1500
0
CLERK
950
1093
142.5
SALESMAN
1250
1250
0
ANALYST
3000
3300
300
CLERK
800
920
120
Status
------Sorry!
Revised
Revised
Revised
Sorry!
Sorry!
Sorry!
Revised
Sorry!
Revised
Revised
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL REVISED SALARY Extra Amount
--------- ---------- -------------- -----------ANALYST
3000
3300
300
CLERK
1100
1265
165
CLERK
1300
1495
195
Status
------Revised
Revised
Revised
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
SQL> cl scr
SQL>
1
2
3
4
5
6
7
8
9
10
11
12
13
14*
R
SELECT Ename, Job, Sal,
DECODE(Job, 'ANALYST', Sal * 1.1,
'CLERK', Sal * 1.15,
'MANAGER', Sal * 1.2,
Sal) "REVISED SALARY",
DECODE(Job, 'ANALYST', Sal * 1.1,
'CLERK', Sal * 1.15,
'MANAGER', Sal * 1.2,
Sal) - Sal "Extra Amount",
DECODE(Job, 'ANALYST', 'Revised',
'CLERK', 'Revised',
'MANAGER', 'Revised',
'Sorry!') "Status"
FROM Emp
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
SAL REVISED SALARY Extra Amount
--------- ---------- -------------- -----------PRESIDENT
5000
5000
0
MANAGER
2850
3420
570
MANAGER
2450
2940
490
MANAGER
2975
3570
595
SALESMAN
1250
1250
0
SALESMAN
1600
1600
0
SALESMAN
1500
1500
0
CLERK
950
1093
142.5
SALESMAN
1250
1250
0
ANALYST
3000
3300
300
CLERK
800
920
120
Status
------Sorry!
Revised
Revised
Revised
Sorry!
Sorry!
Sorry!
Revised
Sorry!
Revised
Revised
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL REVISED SALARY Extra Amount
--------- ---------- -------------- -----------ANALYST
3000
3300
300
CLERK
1100
1265
165
CLERK
1300
1495
195
Status
------Revised
Revised
Revised
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=14 Bytes=36
4)
1
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT
COUNT(DECODE(Deptno, 10, '*', NULL)) D10_COUNT,
SUM(DECODE(Deptno, 10, Sal, NULL)) D10_Sal,
COUNT(DECODE(Deptno, 20, '*', NULL)) D20_COUNT,
SUM(DECODE(Deptno, 20, Sal, NULL)) D20_Sal,
COUNT(DECODE(Deptno, 30, '*', NULL)) D30_COUNT,
SUM(DECODE(Deptno, 30, Sal, NULL)) D30_Sal
FROM Emp;
D10_COUNT
D10_SAL D20_COUNT
D20_SAL D30_COUNT
D30_SAL
---------- ---------- ---------- ---------- ---------- ---------3
8750
5
10875
6
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=26)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=364)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
0
1
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
COUNT(*)
SUM(SAL)
------ ---------- ---------10
3
8750
20
5
10875
30
6
9400
14
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
0
1
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
4
5
6
7
8
9
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=26)
1
0
SORT (AGGREGATE)
2
1
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 Byt
es=364)
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT Job,
SUM(DECODE(Deptno, 10, Sal)) "Deptno 10",
SUM(DECODE(Deptno, 20, Sal)) "Deptno 20",
SUM(DECODE(Deptno, 30, Sal)) "Deptno 30",
SUM(Sal) "Total"
FROM Emp
GROUP BY Job;
JOB
Deptno 10 Deptno 20 Deptno 30
Total
--------- ---------- ---------- ---------- ---------ANALYST
6000
6000
CLERK
1300
1900
950
4150
MANAGER
2450
2975
2850
8275
PRESIDENT
5000
5000
SALESMAN
5600
5600
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT Job,
SUM(DECODE(Deptno, 10, Sal)) "Deptno 10",
SUM(DECODE(Deptno, 20, Sal)) "Deptno 20",
SUM(DECODE(Deptno, 30, Sal)) "Deptno 30",
SUM(Sal) "Total"
FROM Emp
GROUP BY ROLLUP(Job)
/
JOB
Deptno 10 Deptno 20 Deptno 30
Total
--------- ---------- ---------- ---------- ---------ANALYST
6000
6000
CLERK
1300
1900
950
4150
MANAGER
2450
2975
2850
8275
PRESIDENT
5000
5000
SALESMAN
5600
5600
8750
10875
9400
29025
6 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
SQL>
2
3
4
5
6
7
8
9
0
1
SELECT Deptno,
SUM(DECODE(Job, 'PRESIDENT', Sal)) "President",
SUM(DECODE(Job, 'ANALYST', Sal)) "Analyst",
SUM(DECODE(Job, 'MANAGER', Sal)) "Manager",
SUM(DECODE(Job, 'CLERK', Sal)) "Clerk",
SUM(DECODE(Job, 'SALESMAN', Sal)) "Salesman",
SUM(Sal) "Total"
FROM Emp
GROUP BY Deptno;
DEPTNO President
Analyst
Manager
Clerk
Salesman
Total
------ ---------- ---------- ---------- ---------- ---------- ---------10
5000
2450
1300
8750
20
6000
2975
1900
10875
30
2850
950
5600
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
4
5
6
7
8
9
10 5000
20 ***
30 ***
***
6000
***
2450
2975
2850
1300
1900
950
***
***
5600
8750
10875
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
SQL> cl scr
SQL> SET PAGESIZE 200
SQL> BREAK ON Month SKIP 1
SQL> COLUMN Month FORMAT A18
SQL> COLUMN Sun FORMAT A5
SQL> COLUMN Mon FORMAT A5
SQL> COLUMN Tue FORMAT A5
SQL> COLUMN Wed FORMAT A5
SQL> COLUMN Thu FORMAT A5
SQL> COLUMN Fri FORMAT A5
SQL> COLUMN Sat FORMAT A5
SQL> SELECT
2
LPAD(Month, 20 - (20 - LENGTH(Month)) /
3
"Sun",
4
"Mon",
5
"Tue",
6
"Wed",
7
"Thu",
8
"Fri",
9
"Sat"
10 FROM (
11
SELECT
12
TO_CHAR(DT,'FMMonth YYYY') Month,
13
TO_CHAR(DT + 1,'IW') Week,
14
MAX(DECODE(TO_CHAR(DT, 'D'), '1',
"Sun",
15
MAX(DECODE(TO_CHAR(DT, 'D'), '2',
"Mon",
16
MAX(DECODE(TO_CHAR(DT, 'D'), '3',
"Tue",
17
MAX(DECODE(TO_CHAR(DT, 'D'), '4',
"Wed",
18
MAX(DECODE(TO_CHAR(DT, 'D'), '5',
"Thu",
19
MAX(DECODE(TO_CHAR(DT, 'D'), '6',
"Fri",
20
MAX(DECODE(TO_CHAR(DT, 'D'), '7',
"Sat"
21
FROM(
2 ) Month,
22
SELECT TRUNC(SYSDATE, 'Y') - 1 + ROWNUM DT
23
FROM ALL_OBJECTS
24
WHERE
25
ROWNUM <= ADD_MONTHS(TRUNC(SYSDATE, 'Year'), 12) TRUNC(SYSDATE, 'Year')
26
)
27
GROUP BY TO_CHAR(DT, 'FMMonth YYYY'), TO_CHAR(DT + 1, 'IW')
28
)
29 ORDER BY TO_DATE(MONTH, 'Month YYYY' ), TO_NUMBER(Week)
30 /
MONTH
Sun
------------------ ----January 2010
3
10
17
24
31
February 2010
Mon
----4
11
18
25
Tue
----5
12
19
26
Wed
----6
13
20
27
Thu
----7
14
21
28
Fri
----8
15
22
29
Sat
----9
16
23
30
1
8
15
22
2
9
16
23
3
10
17
24
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
4
11
18
25
5
12
19
26
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
7
14
21
28
March 2010
April 2010
May 2010
June 2010
July 2010
August 2010
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
4
11
18
25
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
4
11
18
25
5
12
19
26
6
13
20
27
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
September 2010
October 2010
November 2010
December 2010
63 rows selected.
Execution Plan
---------------------------------------------------------ERROR:
ORA-01039: insufficient privileges on underlying objects of the view
DEPARTMENTS
SUM(SAL)
--------------- --------
10
20
30
All Departments
8750
10875
9400
29025
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SQL>
SELECT
DECODE(GROUPING(Deptno),
1, 'All Departments Investment : ',
'Department '||Deptno||' Investments : ') Departments,
SUM(Sal)
FROM Emp
GROUP BY ROLLUP(Deptno)
COLUMN DEPARTMENTS FORMAT A25
/
DEPARTMENTS
SUM(SAL)
------------------------- -------Department 10 Investments
8750
:
Department 20 Investments
:
10875
Department 30 Investments
:
9400
29025
DEPARTMENTS
SUM(SAL)
------------------------- --------
SQL> cl scr
SQL>
1
2
3
4
5
6
R
SELECT
DECODE(GROUPING(Deptno),
1, 'All Departments Investment : ',
'Department '||Deptno||' Investments : ') Departments,
SUM(Sal)
FROM Emp
7* GROUP BY ROLLUP(Deptno)
DEPARTMENTS
SUM(SAL)
---------------------------- -------Department 10 Investments :
8750
Department 20 Investments :
10875
Department 30 Investments :
9400
All Departments Investment :
29025
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
DECODE(GROUPING(Job),
1, 'All Designations',
Job) Designations,
SUM(Sal)
FROM Emp
GROUP BY ROLLUP(Job);
DESIGNATIONS
SUM(SAL)
---------------- -------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
All Designations
29025
6 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT
DECODE(GROUPING(Deptno),
1 , 'All Departments',
Deptno) Departments,
DECODE(GROUPING(Job),
1, 'All Designations',
Job) Designations,
SUM(Sal)
FROM Emp
GROUP BY CUBE(Deptno, Job)
ORDER BY Deptno;
DEPARTMENTS
---------------------------10
10
10
10
20
20
20
20
30
DESIGNATIONS
SUM(SAL)
---------------- -------CLERK
1300
MANAGER
2450
PRESIDENT
5000
All Designations
8750
ANALYST
6000
CLERK
1900
MANAGER
2975
All Designations
10875
CLERK
950
30
30
MANAGER
SALESMAN
DEPARTMENTS
---------------------------30
All Departments
All Departments
All Departments
All Departments
All Departments
All Departments
DESIGNATIONS
SUM(SAL)
---------------- -------All Designations
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
All Designations
29025
18 rows selected.
SQL> cl scr
SQL> SELECT Deptno, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno;
DEPTNO SUM(SAL)
---------- -------10
8750
20
10875
30
9400
SQL> SELECT Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Job;
JOB
SUM(SAL)
--------- -------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
SQL>
2
3
4
DEPTNO
---------10
10
10
20
20
20
30
30
30
JOB
SUM(SAL)
--------- -------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
2850
5600
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
DEPTNO JOB
SUM(SAL)
---------- --------- -------10
8750
20
10875
30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Deptno,
3 Job,
4 MGR,
5 TO_CHAR(HireDate, 'YYYY') Year,
6 TO_CHAR(HireDate, 'Q') Quarter,
7 TO_CHAR(HireDate, 'Month') Month,
8 TO_CHAR(HireDate, 'Day') WeekDay
9 SUM(Sal)
10 FROM Emp
11 GROUP BY
12 GROUPING SETS
13 (
14
Deptno,
15
Job,
16
MGR,
17
TO_CHAR(HireDate, 'YYYY'),
18
TO_CHAR(HireDate, 'Q'),
19
TO_CHAR(HireDate, 'Month'),
20
TO_CHAR(HireDate, 'Day')
21* )
SQL> /
SUM(Sal)
*
ERROR at line 9:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21*
SQL>
SELECT
Deptno,
Job,
MGR,
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
TO_CHAR(HireDate, 'Month') Month,
TO_CHAR(HireDate, 'Day') WeekDay,
SUM(Sal)
FROM Emp
GROUP BY
GROUPING SETS
(
Deptno,
Job,
MGR,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q'),
TO_CHAR(HireDate, 'Month'),
TO_CHAR(HireDate, 'Day')
)
/
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------10
8750
20
10875
30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
7566
6000
7698
6550
7782
1300
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------7788
1100
7839
8275
7902
800
5000
1980
800
1981
22825
1982
4300
1983
1100
1
5250
2
8275
3
2750
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------4
12750
April
2975
December
7750
February
2850
January
June
May
November
September
Friday
Monday
2400
2450
2850
5000
2750
4450
1250
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------Saturday
1300
Sunday
1250
Thursday
9925
Tuesday
8950
Wednesday
1900
38 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Deptno,
3 Job,
4 MGR,
5 TO_CHAR(HireDate, 'YYYY') Year,
6 TO_CHAR(HireDate, 'Q') Quarter,
7 TO_CHAR(HireDate, 'Month') Month,
8 TO_CHAR(HireDate, 'Day') WeekDay,
9 SUM(Sal)
10 FROM Emp
11 GROUP BY
12 GROUPING SETS
13 (
14
Deptno,
15
Job,
16
MGR,
17
TO_CHAR(HireDate, 'YYYY'),
18
TO_CHAR(HireDate, 'Q'),
19
TO_CHAR(HireDate, 'Month'),
20
TO_CHAR(HireDate, 'Day')
21 )
22* HAVING GROUPING(&ColumnName) = 0
SQL> SET VERIFY OFF
SQL> /
Enter value for columnname: Deptno
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------10
8750
20
10875
30
9400
SQL> /
Enter value for columnname: Job
DEPTNO JOB
WEEKDAY
SUM(SAL)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
3
SQL> ED
0
1
2
FILTER
SORT (GROUP BY) (Cost=4 Card=14 Bytes=364)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 B
ytes=364)
SELECT
Deptno,
Job,
MGR,
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
TO_CHAR(HireDate, 'Month') Month,
TO_CHAR(HireDate, 'Day') WeekDay,
SUM(Sal)
FROM Emp
GROUP BY
GROUPING SETS
(
Deptno,
Job,
MGR,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q'),
TO_CHAR(HireDate, 'Month'),
TO_CHAR(HireDate, 'Day')
)
/
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------10
8750
20
10875
30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
7566
6000
7698
6550
7782
1300
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------7788
1100
7839
8275
7902
800
5000
1980
800
1981
22825
1982
4300
1983
1100
1
5250
2
8275
3
2750
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------4
12750
April
2975
December
February
January
June
May
November
September
Friday
Monday
7750
2850
2400
2450
2850
5000
2750
4450
1250
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------Saturday
1300
Sunday
1250
Thursday
9925
Tuesday
8950
Wednesday
1900
38 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=26 Card=14 Bytes=8
82)
1
2
3
0
1
2
4
5
6
1
4
5
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=26)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6604_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=26)
7
8
9
1
7
8
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=19)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6604_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=19)
10
11
12
1
10
11
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=26)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6604_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=26)
13
14
15
1
13
14
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=17)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6604_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=17)
16
17
18
1
16
17
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=15)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6604_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=15)
19
LOAD AS SELECT
20
21
19
20
22
23
24
1
22
23
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=19)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6604_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=19)
25
26
1
25
SQL> cl scr
SQL> SET AUTOTRACE OFF EXPLAIN
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
ENAME
DEPTNO CASEDEPTNO
---------- ---------- ---------KING
10 ACCOUNTING
BLAKE
30 SALES
CLARK
10 ACCOUNTING
JONES
20 RESEARCH
MARTIN
30 SALES
ALLEN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
FORD
20 RESEARCH
SMITH
20 RESEARCH
ENAME
DEPTNO CASEDEPTNO
---------- ---------- ---------SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
MILLER
10 ACCOUNTING
14 rows selected.
SQL> SELECT Ename, Deptno,
2 DECODE(Deptno
3
, 10 , 'ACCOUNTING'
4
, 20 , 'RESEARCH'
5
6
7
8
, 30 , 'SALES'
, 40 , 'OPERATIONS'
, 'NOT FOUND') Dept
FROM Emp;
ENAME
DEPTNO DEPT
---------- ---------- ---------KING
10 ACCOUNTING
BLAKE
30 SALES
CLARK
10 ACCOUNTING
JONES
20 RESEARCH
MARTIN
30 SALES
ALLEN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
FORD
20 RESEARCH
SMITH
20 RESEARCH
ENAME
DEPTNO DEPT
---------- ---------- ---------SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
MILLER
10 ACCOUNTING
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
'ACCOUNTING'
'RESEARCH'
'SALES'
'OPERATIONS'
ENAME
DEPTNO CASEWHENDEPTN
---------- ---------- ------------KING
10 ACCOUNTING
BLAKE
30 SALES
CLARK
10 ACCOUNTING
JONES
20 RESEARCH
MARTIN
30 SALES
ALLEN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
WARD
30 SALES
FORD
20 RESEARCH
SMITH
20 RESEARCH
ENAME
DEPTNO CASEWHENDEPTN
---------- ---------- ------------SCOTT
20 RESEARCH
ADAMS
20 RESEARCH
MILLER
10 ACCOUNTING
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
ENAME
SAL CASEWHENSAL>
---------- ---------- -----------KING
5000 HIGH PAY
BLAKE
2850 MODERATE PAY
CLARK
2450 MODERATE PAY
JONES
2975 MODERATE PAY
MARTIN
1250 LOWEST PAY
ALLEN
1600 LOWEST PAY
TURNER
1500 LOWEST PAY
JAMES
950 LOWEST PAY
WARD
1250 LOWEST PAY
FORD
3000 MODERATE PAY
SMITH
800 LOWEST PAY
ENAME
SAL CASEWHENSAL>
---------- ---------- -----------SCOTT
3000 MODERATE PAY
ADAMS
1100 LOWEST PAY
MILLER
1300 LOWEST PAY
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
ENAME
SAL CASEWHENSALB
---------- ---------- -----------KING
5000 HIGH PAY
BLAKE
2850 MODERATE PAY
CLARK
2450 MODERATE PAY
JONES
2975 MODERATE PAY
MARTIN
1250 LOWEST PAY
ALLEN
1600 LOWEST PAY
TURNER
1500 LOWEST PAY
JAMES
WARD
FORD
SMITH
950
1250
3000
800
LOWEST PAY
LOWEST PAY
MODERATE PAY
LOWEST PAY
ENAME
SAL CASEWHENSALB
---------- ---------- -----------SCOTT
3000 MODERATE PAY
ADAMS
1100 LOWEST PAY
MILLER
1300 LOWEST PAY
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
ENAME
SAL CASEWHENSALB
---------- ---------- -----------KING
5000 HIGH PAY
BLAKE
2850 MODERATE PAY
CLARK
2450 MODERATE PAY
JONES
2975 MODERATE PAY
MARTIN
1250 LOWEST PAY
ALLEN
1600 LOWEST PAY
TURNER
1500 LOWEST PAY
JAMES
950 HIGH PAY
WARD
1250 LOWEST PAY
FORD
3000 MODERATE PAY
SMITH
800 HIGH PAY
ENAME
SAL CASEWHENSALB
---------- ---------- -----------SCOTT
3000 MODERATE PAY
ADAMS
1100 HIGH PAY
MILLER
1300 HIGH PAY
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
END
ENAME
SAL JOB
CASEWHENSALB
---------- ---------- --------- -----------KING
5000 PRESIDENT HIGH PAY
BLAKE
2850 MANAGER
MODERATE PAY
CLARK
2450 MANAGER
MODERATE PAY
JONES
2975 MANAGER
MODERATE PAY
MARTIN
1250 SALESMAN LOWEST PAY
ALLEN
1600 SALESMAN LOWEST PAY
TURNER
1500 SALESMAN LOWEST PAY
JAMES
950 CLERK
HIGH PAY
WARD
1250 SALESMAN LOWEST PAY
FORD
3000 ANALYST
MODERATE PAY
SMITH
800 CLERK
HIGH PAY
ENAME
SAL JOB
---------- ---------- --------SCOTT
3000 ANALYST
ADAMS
1100 CLERK
MILLER
1300 CLERK
CASEWHENSALB
-----------MODERATE PAY
HIGH PAY
HIGH PAY
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
JOB
SUM(SAL)
--------- -------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL>
2
3
4
5
View created.
SQL>
SQL>
2
3
DEPTNO
---------10
10
10
20
20
20
30
30
30
JOB
SALSUM
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
Execution Plan
----------------------------------------------------------
1
2
JOB
SALSUM
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
0
1
)
3
4
2
3
SQL> cl scr
SQL>
2
3
4
5
6
7
JOB
SUM(SAL)
--------- -------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=9 Bytes=288
)
1
10
20
30
8750
10875
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=234
)
1
2
0
1
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
JOB
SUM(SAL)
--------- -------ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=171
)
1
2
0
1
SUM(SAL)
-------29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=1 Bytes=13)
1
0
SORT (AGGREGATE)
2
1
MAT_VIEW REWRITE ACCESS (FULL) OF 'EMP_SUM' (MAT_VIEW RE
WRITE) (Cost=3 Card=9 Bytes=117)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=234
)
1
2
0
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=171
)
1
2
0
1
JOB
SUM(SAL)
--------- -------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
---------- --------- -------30
9400
29025
13 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=288
)
1
2
SQL>
2
3
4
0
1
DEPTNO JOB
SUM(SAL)
---------- --------- -------10 CLERK
1300
10
10
10
20
20
20
20
30
30
30
MANAGER
PRESIDENT
ANALYST
CLERK
MANAGER
CLERK
MANAGER
SALESMAN
2450
5000
8750
6000
1900
2975
10875
950
2850
5600
DEPTNO JOB
SUM(SAL)
---------- --------- -------30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
29025
18 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=288
)
1
2
3
4
0
1
2
3
JOB
SUM(SAL)
--------- -------CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=288
)
1
2
0
1
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
---------10
20
30
20
10
20
30
30
JOB
SUM(SAL)
--------- -------CLERK
1300
CLERK
1900
CLERK
950
CLERK
4150
ANALYST
6000
ANALYST
6000
MANAGER
2450
MANAGER
2975
MANAGER
2850
MANAGER
8275
SALESMAN
5600
DEPTNO JOB
SUM(SAL)
---------- --------- -------SALESMAN
5600
10 PRESIDENT
5000
PRESIDENT
5000
14 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=9 Bytes=288
)
1
2
0
1
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=11 Card=9 Bytes=28
8)
1
2
3
0
1
2
4
5
6
1
4
5
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=26)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D660A_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=26)
7
8
9
1
7
8
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=19)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D660A_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=19)
10
11
1
10
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21*
SQL>
SELECT
Deptno,
Job,
MGR,
TO_CHAR(HireDate, 'YYYY') Year,
TO_CHAR(HireDate, 'Q') Quarter,
TO_CHAR(HireDate, 'Month') Month,
TO_CHAR(HireDate, 'Day') WeekDay,
SUM(Sal)
FROM Emp
GROUP BY
GROUPING SETS
(
Deptno,
Job,
MGR,
TO_CHAR(HireDate, 'YYYY'),
TO_CHAR(HireDate, 'Q'),
TO_CHAR(HireDate, 'Month'),
TO_CHAR(HireDate, 'Day')
)
/
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------10
8750
20
10875
30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
7566
6000
7698
6550
7782
1300
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------7788
1100
7839
8275
7902
800
5000
1980
800
1981
22825
1982
4300
1983
1100
1
5250
2
8275
3
2750
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------4
12750
April
2975
December
7750
February
2850
January
June
May
November
September
Friday
Monday
2400
2450
2850
5000
2750
4450
1250
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------Saturday
1300
Sunday
1250
Thursday
9925
Tuesday
8950
Wednesday
1900
38 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=26 Card=14 Bytes=8
82)
1
2
3
0
1
2
4
5
6
1
4
5
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=26)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=26)
7
8
9
1
7
8
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=19)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=19)
10
11
12
1
10
11
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=26)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=26)
13
14
15
1
13
14
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=17)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=17)
16
17
18
1
16
17
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=15)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=15)
19
20
21
1
19
20
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=19)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
1
22
23
LOAD AS SELECT
SORT (GROUP BY) (Cost=3 Card=1 Bytes=19)
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6610_14C83BF'
(TABLE (TEMP)) (Cost=2 Card=1 Bytes=19)
25
26
1
25
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24*
SQL>
SELECT
Deptno,
Job,
MGR,
TO_CHAR(HireDate,
TO_CHAR(HireDate,
TO_CHAR(HireDate,
TO_CHAR(HireDate,
SUM(Sal)
FROM Emp
GROUP BY
GROUPING SETS
'YYYY') Year,
'Q') Quarter,
'Month') Month,
'Day') WeekDay,
13
14
15
16
17
18
19
20
21
22
(
Deptno,
Job,
MGR,
TO_CHAR(HireDate,
TO_CHAR(HireDate,
TO_CHAR(HireDate,
TO_CHAR(HireDate,
)
'YYYY'),
'Q'),
'Month'),
'Day')
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------10
8750
20
10875
30
9400
ANALYST
6000
CLERK
4150
MANAGER
8275
PRESIDENT
5000
SALESMAN
5600
7566
6000
7698
6550
7782
1300
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------7788
1100
7839
8275
7902
800
5000
1980
800
1981
22825
1982
4300
1983
1100
1
5250
2
8275
3
2750
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------4
12750
April
2975
December
7750
February
2850
January
2400
June
2450
May
2850
November
5000
September
2750
Friday
4450
Monday
1250
DEPTNO JOB
MGR YEAR Q MONTH
WEEKDAY
SUM(SAL)
---------- --------- ---------- ---- - --------- --------- -------Saturday
1300
Sunday
1250
Thursday
Tuesday
Wednesday
9925
8950
1900
38 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=38 Bytes=23
94)
1
SELECT
Deptno,
GROUPING(Deptno) GrpDeptnoBit,
Job,
GROUPING(Job) GrpJobBit,
SUM(Sal)
FROM Emp
GROUP BY ROLLUP(Deptno, Job);
SQL> R
1
2
3
4
5
6
7
8*
SELECT
Deptno,
GROUPING(Deptno) GrpDeptnoBit,
Job,
GROUPING(Job) GrpJobBit,
SUM(Sal)
FROM Emp
GROUP BY ROLLUP(Deptno, Job)
SQL> ED
Wrote file afiedt.buf
1
2
3
SELECT
Deptno,
GROUPING(Deptno) GrpDeptnoBit,
4
5
6
7
8
9*
SQL>
Job,
GROUPING(Job) GrpJobBit,
GROUPING_ID(Deptno, Job) GrpVal,
SUM(Sal) SalSum
FROM Emp
GROUP BY ROLLUP(Deptno, Job)
/
SELECT
Deptno,
Job,
GROUPING_ID(Deptno, Job) GrpVal,
SUM(Sal) SalSum
FROM Emp
GROUP BY ROLLUP(Deptno, Job)
/
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
GRPVAL SALSUM
--------- ------ -----CLERK
0
1300
MANAGER
0
2450
PRESIDENT
0
5000
1
8750
CLERK
0
1900
ANALYST
0
6000
MANAGER
0
2975
1 10875
CLERK
0
950
MANAGER
0
2850
SALESMAN
0
5600
DEPTNO JOB
GRPVAL SALSUM
------ --------- ------ ------
30
1
3
9400
29025
13 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 Deptno,
3 Job,
4 SUM(Sal) SalSum
5 FROM Emp
6 GROUP BY ROLLUP(Deptno, Job)
7 HAVING
8* GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
SQL> /
Enter value for grpval1: 0
Enter value for grpval2: 0
Enter value for grpval3: 0
old
8: GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
new
8: GROUPING_ID(Deptno, Job) IN(0, 0, 0)
DEPTNO
-----10
10
10
20
20
20
30
30
30
JOB
SALSUM
--------- -----CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
9 rows selected.
SQL> /
Enter value for grpval1: 0
Enter value for grpval2: 1
Enter value for grpval3: 1
old
8: GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
new
8: GROUPING_ID(Deptno, Job) IN(0, 1, 1)
DEPTNO
-----10
10
10
10
20
20
20
20
30
30
30
JOB
SALSUM
--------- -----CLERK
1300
MANAGER
2450
PRESIDENT
5000
8750
CLERK
1900
ANALYST
6000
MANAGER
2975
10875
CLERK
950
MANAGER
2850
SALESMAN
5600
DEPTNO JOB
SALSUM
------ --------- -----30
9400
12 rows selected.
SQL> /
Enter value for grpval1: 1
Enter value for grpval2: 1
Enter value for grpval3: 1
old
8: GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
new
8: GROUPING_ID(Deptno, Job) IN(1, 1, 1)
DEPTNO JOB
SALSUM
------ --------- -----10
8750
20
10875
30
9400
SQL> /
Enter value for grpval1: 1
Enter value for grpval2: 1
Enter value for grpval3: 3
old
8: GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
new
8: GROUPING_ID(Deptno, Job) IN(1, 1, 3)
DEPTNO JOB
SALSUM
------ --------- -----10
8750
20
10875
30
9400
29025
SQL> /
Enter value for grpval1: 3
Enter value for grpval2: 3
Enter value for grpval3: 3
old
8: GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
new
8: GROUPING_ID(Deptno, Job) IN(3, 3, 3)
DEPTNO JOB
SALSUM
------ --------- -----29025
SQL>
SQL>
2
3
4
5
6
7
DEPTNO JOB
GRPVAL SALSUM
------ --------- ------ -----10 CLERK
0
1300
10
10
10
20
20
20
20
30
30
30
MANAGER
PRESIDENT
CLERK
ANALYST
MANAGER
CLERK
MANAGER
SALESMAN
0
0
1
0
0
0
1
0
0
0
2450
5000
8750
1900
6000
2975
10875
950
2850
5600
DEPTNO JOB
GRPVAL SALSUM
------ --------- ------ -----30
1
9400
3 29025
13 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=44
8)
1
2
0
1
SQL> SELECT
2 Deptno,
3 Job,
4 SUM(Sal) SalSum
5 FROM Emp
6 GROUP BY ROLLUP(Deptno, Job)
7 HAVING
8 GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
9 /
Enter value for grpval1: 1
Enter value for grpval2: 1
Enter value for grpval3: 3
old
8: GROUPING_ID(Deptno, Job) IN(&GrpVal1, &GrpVal2, &GrpVal3)
new
8: GROUPING_ID(Deptno, Job) IN(1, 1, 3)
DEPTNO JOB
SALSUM
------ --------- -----10
8750
20
10875
30
9400
29025
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=4 Card=14 Bytes=36
4)
1
2
3
0
1
2
FILTER
SORT (GROUP BY ROLLUP) (Cost=4 Card=14 Bytes=364)
TABLE ACCESS (FULL) OF 'EMP' (TABLE) (Cost=3 Card=14 B
ytes=364)
SQL> cl scr
SQL> SELECT Deptno, Job, SUM(Sal)
2 FROM Emp
3 GROUP BY Deptno, ROLLUP(Deptno, Job);
DEPTNO
-----10
10
10
20
20
20
30
30
30
10
20
JOB
SUM(SAL)
--------- ---------CLERK
1300
MANAGER
2450
PRESIDENT
5000
CLERK
1900
ANALYST
6000
MANAGER
2975
CLERK
950
MANAGER
2850
SALESMAN
5600
8750
10875
DEPTNO JOB
SUM(SAL)
------ --------- ---------30
9400
10
8750
20
10875
30
9400
15 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=14 Bytes=4
48)
1
2
3
4
5
6
0
1
2
2
4
5
7
8
9
10
1
7
8
9
12
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
DEPTNO
-----10
10
10
20
20
20
30
30
30
10
20
JOB
GRPID
SUM(SAL)
--------- ---------- ---------CLERK
0
1300
MANAGER
0
2450
PRESIDENT
0
5000
CLERK
0
1900
ANALYST
0
6000
MANAGER
0
2975
CLERK
0
950
MANAGER
0
2850
SALESMAN
0
5600
0
8750
0
10875
DEPTNO JOB
GRPID
SUM(SAL)
------ --------- ---------- ---------30
0
9400
10
1
8750
20
1
10875
30
1
9400
15 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=14 Bytes=4
90)
1
2
3
4
5
6
0
1
2
2
4
5
8
9
10
7
8
9
11
12
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
DEPTNO
-----10
10
10
20
20
20
30
30
30
10
20
JOB
GRPID
SUM(SAL)
--------- ---------- ---------CLERK
0
1300
MANAGER
0
2450
PRESIDENT
0
5000
CLERK
0
1900
ANALYST
0
6000
MANAGER
0
2975
CLERK
0
950
MANAGER
0
2850
SALESMAN
0
5600
0
8750
0
10875
DEPTNO JOB
GRPID
SUM(SAL)
------ --------- ---------- ---------30
0
9400
12 rows selected.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=14 Bytes=4
90)
1
2
3
4
5
6
0
1
2
2
4
5
7
8
9
10
1
7
8
9
11
12
13
9
12
FILTER
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D660A_14E5D
F5' (TABLE (TEMP)) (Cost=2 Card=1 Bytes=32)
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
DEPTNO JOB
GRPID
SUM(SAL)
------ --------- ---------- ---------10
1
8750
20
1
10875
30
1
9400
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=10 Card=14 Bytes=4
90)
1
2
3
4
5
6
0
1
2
2
4
5
7
8
9
10
11
1
7
8
9
10
12
13
9
12
FILTER
TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D660E_14E5D
F5' (TABLE (TEMP)) (Cost=2 Card=1 Bytes=32)
14
Sal
ENAME
DEPTNO
SAL
---------- ---------- ---------KING
10
5000
BLAKE
30
2850
CLARK
10
2450
JONES
20
2975
MARTIN
30
1250
ALLEN
30
1600
TURNER
30
1500
JAMES
30
950
WARD
FORD
SMITH
30
20
20
1250
3000
800
ENAME
DEPTNO
SAL
---------- ---------- ---------SCOTT
20
3000
ADAMS
20
1100
MILLER
10
1300
14 rows selected.
SQL>
2
3
4
5
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------SMITH
20
800
1
JAMES
30
950
2
ADAMS
20
1100
3
MARTIN
30
1250
4
WARD
30
1250
4
MILLER
10
1300
6
TURNER
30
1500
7
ALLEN
30
1600
8
CLARK
10
2450
9
BLAKE
30
2850
10
JONES
20
2975
11
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------FORD
20
3000
12
SCOTT
20
3000
12
KING
10
5000
14
14 rows selected.
SQL>
2
3
4
5
6
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------SMITH
20
800
1
JAMES
30
950
2
ADAMS
20
1100
3
MARTIN
30
1250
4
WARD
30
1250
4
MILLER
10
1300
6
TURNER
30
1500
7
ALLEN
30
1600
8
CLARK
BLAKE
JONES
10
30
20
2450
2850
2975
9
10
11
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------FORD
20
3000
12
SCOTT
20
3000
12
KING
10
5000
14
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
14
FORD
20
3000
12
SCOTT
20
3000
12
JONES
20
2975
11
BLAKE
30
2850
10
CLARK
10
2450
9
ALLEN
30
1600
8
TURNER
30
1500
7
MILLER
10
1300
6
MARTIN
30
1250
4
WARD
30
1250
4
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------ADAMS
20
1100
3
JAMES
30
950
2
SMITH
20
800
1
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
SAL
EMPRANK
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------SMITH
20
800
14
JAMES
30
950
13
ADAMS
20
1100
12
MARTIN
30
1250
10
WARD
30
1250
10
MILLER
10
1300
9
TURNER
30
1500
8
ALLEN
30
1600
7
CLARK
10
2450
6
BLAKE
30
2850
5
JONES
20
2975
4
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------FORD
20
3000
2
SCOTT
20
3000
2
KING
10
5000
1
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
EMPRANK
---------- ---------- ---------SMITH
20
14
JAMES
30
13
ADAMS
20
12
MARTIN
30
10
WARD
30
10
MILLER
10
9
TURNER
30
8
ALLEN
30
7
CLARK
10
6
BLAKE
30
5
JONES
20
4
ENAME
DEPTNO
EMPRANK
---------- ---------- ---------FORD
20
2
SCOTT
20
2
KING
10
1
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
EName, Deptno, Sal,
DENSE_RANK()
OVER(ORDER BY Sal DESC) EmpRank
FROM Emp
GROUP BY Deptno, EName, Sal
ORDER BY EmpRank;
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
FORD
20
3000
2
SCOTT
20
3000
2
JONES
20
2975
3
BLAKE
30
2850
4
CLARK
10
2450
5
ALLEN
30
1600
6
TURNER
30
1500
7
MILLER
10
1300
8
MARTIN
30
1250
9
WARD
30
1250
9
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------ADAMS
20
1100
10
JAMES
30
950
11
SMITH
20
800
12
14 rows selected.
SQL> cl scr
SQL> SELECT ROWNUM, E1.*
2 FROM (SELECT
EName, Deptno, Sal,
3
DENSE_RANK()
4
OVER(ORDER BY Sal DESC) EmpRank
5
FROM Emp
6
GROUP BY Deptno, EName, Sal
7
ORDER BY EmpRank) E1
8 ORDER BY ROWNUM;
ROWNUM
---------1
2
3
4
5
6
7
8
9
10
11
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
FORD
20
3000
2
SCOTT
20
3000
2
JONES
20
2975
3
BLAKE
30
2850
4
CLARK
10
2450
5
ALLEN
30
1600
6
TURNER
30
1500
7
MILLER
10
1300
8
MARTIN
30
1250
9
WARD
30
1250
9
ROWNUM
---------12
13
14
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------ADAMS
20
1100
10
JAMES
30
950
11
SMITH
20
800
12
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT
DENSE_RANK()
OVER(ORDER BY Ename) RollNo,
EName, Deptno, Sal
FROM Emp
GROUP BY Deptno, EName, Sal
ORDER BY RollNo;
ROLLNO
---------1
2
3
4
5
6
7
8
ENAME
DEPTNO
SAL
---------- ---------- ---------ADAMS
20
1100
ALLEN
30
1600
BLAKE
30
2850
CLARK
10
2450
FORD
20
3000
JAMES
30
950
JONES
20
2975
KING
10
5000
9 MARTIN
10 MILLER
11 SCOTT
ROLLNO
---------12
13
14
30
10
20
1250
1300
3000
ENAME
DEPTNO
SAL
---------- ---------- ---------SMITH
20
800
TURNER
30
1500
WARD
30
1250
14 rows selected.
SQL> INSERT INTO Emp(Empno, Ename, Deptno)
2 VALUES(1234, 'ALLEN', 30);
1 row created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno)
2 VALUES(1235, 'ALLEN', 30);
1 row created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno)
2 VALUES(1236, 'ALLEN', 30);
1 row created.
SQL>
2
3
4
5
6
7
SELECT
DENSE_RANK()
OVER(ORDER BY Ename) RollNo,
EName, Deptno, Sal
FROM Emp
GROUP BY Deptno, EName, Sal
ORDER BY RollNo;
ROLLNO
---------1
2
2
3
4
5
6
7
8
9
10
ENAME
DEPTNO
SAL
---------- ---------- ---------ADAMS
20
1100
ALLEN
30
1600
ALLEN
30
BLAKE
30
2850
CLARK
10
2450
FORD
20
3000
JAMES
30
950
JONES
20
2975
KING
10
5000
MARTIN
30
1250
MILLER
10
1300
ROLLNO
---------11
12
13
14
ENAME
DEPTNO
SAL
---------- ---------- ---------SCOTT
20
3000
SMITH
20
800
TURNER
30
1500
WARD
30
1250
15 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
DENSE_RANK()
OVER(ORDER BY Ename) RollNo,
EName, Deptno, Sal
FROM Emp
ORDER BY RollNo
/
ROLLNO
---------1
2
2
2
2
3
4
5
6
7
8
ENAME
DEPTNO
SAL
---------- ---------- ---------ADAMS
20
1100
ALLEN
30
1600
ALLEN
30
ALLEN
30
ALLEN
30
BLAKE
30
2850
CLARK
10
2450
FORD
20
3000
JAMES
30
950
JONES
20
2975
KING
10
5000
ROLLNO
---------9
10
11
12
13
14
ENAME
DEPTNO
SAL
---------- ---------- ---------MARTIN
30
1250
MILLER
10
1300
SCOTT
20
3000
SMITH
20
800
TURNER
30
1500
WARD
30
1250
17 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
SELECT
DENSE_RANK()
OVER(ORDER BY Ename, Empno) RollNo,
EName, Deptno, Sal
FROM Emp
ORDER BY RollNo
/
ROLLNO
---------1
2
3
4
5
6
7
ENAME
DEPTNO
SAL
---------- ---------- ---------ADAMS
20
1100
ALLEN
30
ALLEN
30
ALLEN
30
ALLEN
30
1600
BLAKE
30
2850
CLARK
10
2450
8
9
10
11
ROLLNO
---------12
13
14
15
16
17
FORD
JAMES
JONES
KING
20
30
20
10
3000
950
2975
5000
ENAME
DEPTNO
SAL
---------- ---------- ---------MARTIN
30
1250
MILLER
10
1300
SCOTT
20
3000
SMITH
20
800
TURNER
30
1500
WARD
30
1250
17 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
SELECT
DENSE_RANK()
OVER(ORDER BY Ename) RollNo,
EName, Sal,
DENSE_RANK()
OVER(ORDER BY Sal DESC) RankSal,
HireDate,
DENSE_RANK()
OVER(ORDER BY HireDate) SeniorRank,
DENSE_RANK()
OVER(ORDER BY HireDate DESC) JuniorRank
FROM Emp
ORDER BY RollNo;
ROLLNO
---------1
2
3
4
5
6
7
8
9
10
11
ENAME
SAL
RANKSAL HIREDATE SENIORRANK JUNIORRANK
---------- ---------- ---------- --------- ---------- ---------ADAMS
1100
10 12-JAN-83
13
1
ALLEN
1600
6 20-FEB-81
2
12
BLAKE
2850
4 01-MAY-81
5
9
CLARK
2450
5 09-JUN-81
6
8
FORD
3000
2 03-DEC-81
10
4
JAMES
950
11 03-DEC-81
10
4
JONES
2975
3 02-APR-81
4
10
KING
5000
1 17-NOV-81
9
5
MARTIN
1250
9 28-SEP-81
8
6
MILLER
1300
8 23-JAN-82
11
3
SCOTT
3000
2 09-DEC-82
12
2
ROLLNO
---------12
13
14
ENAME
SAL
RANKSAL HIREDATE SENIORRANK JUNIORRANK
---------- ---------- ---------- --------- ---------- ---------SMITH
800
12 17-DEC-80
1
13
TURNER
1500
7 08-SEP-81
7
7
WARD
1250
9 22-FEB-81
3
11
14 rows selected.
ENAME
DEPTNO
SAL
TOP Sal
---------- ---------- ---------- ---------KING
10
5000
1
CLARK
10
2450
2
MILLER
10
1300
3
FORD
20
3000
1
SCOTT
20
3000
1
JONES
20
2975
3
ADAMS
20
1100
4
SMITH
20
800
5
BLAKE
30
2850
1
ALLEN
30
1600
2
TURNER
30
1500
3
ENAME
DEPTNO
SAL
TOP Sal
---------- ---------- ---------- ---------MARTIN
30
1250
4
WARD
30
1250
4
JAMES
30
950
6
14 rows selected.
SQL> cl scr
SQL> SELECT
EName, Deptno, Sal,
2
DENSE_RANK()
3
OVER(ORDER BY Sal DESC) EmpRank
4
FROM Emp
5
GROUP BY Deptno, EName, Sal
6
ORDER BY EmpRank;
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
FORD
20
3000
2
SCOTT
20
3000
2
JONES
20
2975
3
BLAKE
30
2850
4
CLARK
10
2450
5
ALLEN
30
1600
6
TURNER
30
1500
7
MILLER
10
1300
8
MARTIN
30
1250
9
WARD
30
1250
9
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------ADAMS
20
1100
10
JAMES
30
950
11
SMITH
20
800
12
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
ROWNUM
---------1
2
3
4
5
6
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
FORD
20
3000
2
SCOTT
20
3000
2
JONES
20
2975
3
BLAKE
30
2850
4
CLARK
10
2450
5
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT ROWNUM, E1.*
2 FROM (SELECT
EName, Deptno, Sal,
3
DENSE_RANK()
4
OVER(ORDER BY Sal DESC) EmpRank
5
FROM Emp
6
GROUP BY Deptno, EName, Sal
7
ORDER BY EmpRank) E1
8 WHERE E1.EmpRank &GOperator &GValue
9* ORDER BY ROWNUM
SQL> /
Enter value for goperator: =
Enter value for gvalue: 1
ROWNUM ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------- ---------1 KING
10
5000
1
SQL> /
Enter value for goperator: 1
Enter value for gvalue:
WHERE E1.EmpRank 1
*
ERROR at line 8:
ORA-00920: invalid relational operator
SQL> /
Enter value for goperator: =
Enter value for gvalue: 6
ROWNUM ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------- ---------1 ALLEN
30
1600
6
SQL> /
Enter value for goperator: =
Enter value for gvalue: 2
ROWNUM
---------1
2
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------FORD
20
3000
2
SCOTT
20
3000
2
SQL> /
Enter value for goperator: <
Enter value for gvalue: 5
ROWNUM
---------1
2
3
4
5
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
FORD
20
3000
2
SCOTT
20
3000
2
JONES
20
2975
3
BLAKE
30
2850
4
SQL> /
Enter value for goperator: >
Enter value for gvalue: 5
ROWNUM
---------1
2
3
4
5
6
7
8
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------ALLEN
30
1600
6
TURNER
30
1500
7
MILLER
10
1300
8
MARTIN
30
1250
9
WARD
30
1250
9
ADAMS
20
1100
10
JAMES
30
950
11
SMITH
20
800
12
8 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
ORDER BY EmpRank) E1
8 WHERE E1.EmpRank BETWEEN &GVal1 AND &GVal2
9* ORDER BY ROWNUM
SQL> /
Enter value for gval1: 1
Enter value for gval2: 4
ROWNUM
---------1
2
3
4
5
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
FORD
20
3000
2
SCOTT
20
3000
2
JONES
20
2975
3
BLAKE
30
2850
4
SQL> /
Enter value for gval1: 5
Enter value for gval2: 9
ROWNUM
---------1
2
3
4
5
6
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------CLARK
10
2450
5
ALLEN
30
1600
6
TURNER
30
1500
7
MILLER
10
1300
8
MARTIN
30
1250
9
WARD
30
1250
9
6 rows selected.
SQL> /
Enter value for gval1: 10
Enter value for gval2: 14
ROWNUM
---------1
2
3
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------ADAMS
20
1100
10
JAMES
30
950
11
SMITH
20
800
12
SQL> ED
Wrote file afiedt.buf
1 SELECT ROWNUM, E1.*
2 FROM (SELECT
EName, Deptno, Sal,
3
DENSE_RANK()
4
OVER(ORDER BY Sal DESC) EmpRank
5
FROM Emp
6
GROUP BY Deptno, EName, Sal
7
ORDER BY EmpRank) E1
8 WHERE E1.EmpRank IN(&GVal1, &GVal2, &GVal3)
9* ORDER BY ROWNUM
SQL> /
Enter value for gval1: 1
Enter value for gval2: 5
Enter value for gval3: 8
ROWNUM
---------1
2
3
ENAME
DEPTNO
SAL
EMPRANK
---------- ---------- ---------- ---------KING
10
5000
1
CLARK
10
2450
5
MILLER
10
1300
8
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT
TO_CHAR(HireDate, 'YYYY') "Year",
SUM(Sal),
DENSE_RANK()
OVER(ORDER BY SUM(Sal) DESC) YearRank
FROM Emp
GROUP BY TO_CHAR(HireDate, 'YYYY')
ORDER BY YearRank;
Year
SUM(SAL)
YEARRANK
---- ---------- ---------1981
22825
1
1982
4300
2
1983
1100
3
1980
800
4
SQL> ED
Wrote file afiedt.buf
1 SELECT
2 TO_CHAR(HireDate, 'YYYY') "Year",
3 SUM(Sal),
4 DENSE_RANK()
5 OVER(ORDER BY SUM(Sal) DESC) YearRank
6 FROM Emp
7 --GROUP BY TO_CHAR(HireDate, 'YYYY')
8* ORDER BY YearRank
SQL> /
TO_CHAR(HireDate, 'YYYY') "Year",
*
ERROR at line 2:
ORA-00937: not a single-group group function
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Deptno, TO_CHAR(HireDate, 'YYYY') "Year", SUM(Sal),
DENSE_RANK()
OVER(ORDER BY SUM(Sal) DESC) YearRank
FROM Emp
GROUP BY Deptno, TO_CHAR(HireDate, 'YYYY')
ORDER BY YearRank;
DEPTNO
---------30
10
20
20
Year
SUM(SAL)
YEARRANK
---- ---------- ---------1981
9400
1
1981
7450
2
1981
5975
3
1982
3000
4
10 1982
20 1983
20 1980
1300
1100
800
5
6
7
7 rows selected.
SQL> cl scr
SQL>
2
3
4
ENAME
DEPTNO
SAL
Run Sum
---------- ---------- ---------- ---------KING
10
5000
5000
FORD
20
3000
11000
SCOTT
20
3000
11000
JONES
20
2975
13975
BLAKE
30
2850
16825
CLARK
10
2450
19275
ALLEN
30
1600
20875
TURNER
30
1500
22375
MILLER
10
1300
23675
MARTIN
30
1250
26175
WARD
30
1250
26175
ENAME
DEPTNO
SAL
Run Sum
---------- ---------- ---------- ---------ADAMS
20
1100
27275
JAMES
30
950
28225
SMITH
20
800
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
DEPTNO
SAL
Run Sum
---------- ---------- ---------- ---------KING
10
5000
5000
FORD
20
3000
8000
SCOTT
20
3000
11000
JONES
20
2975
13975
BLAKE
30
2850
16825
CLARK
10
2450
19275
ALLEN
30
1600
20875
TURNER
30
1500
22375
MILLER
10
1300
23675
MARTIN
30
1250
24925
WARD
30
1250
26175
ENAME
DEPTNO
SAL
Run Sum
---------- ---------- ---------- ---------ADAMS
20
1100
27275
JAMES
30
950
28225
SMITH
20
800
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
DEPTNO
SAL
Mov Avg
---------- ---------- ---------- ---------KING
10
5000
5000
FORD
20
3000
4000
SCOTT
20
3000 3666.66667
JONES
20
2975
3493.75
BLAKE
30
2850
3365
CLARK
10
2450
3212.5
ALLEN
30
1600 2982.14286
TURNER
30
1500
2796.875
MILLER
10
1300 2630.55556
MARTIN
30
1250
2492.5
WARD
30
1250 2379.54545
ENAME
DEPTNO
SAL
Mov Avg
---------- ---------- ---------- ---------ADAMS
20
1100 2272.91667
JAMES
30
950 2171.15385
SMITH
20
800 2073.21429
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
ENAME
DEPTNO SAL
Run Sum
Mov Avg
---------- ---------- --------- ---------- ---------KING
10 5,000.00
5,000.00
5,000.00
FORD
20 3,000.00
8,000.00
4,000.00
SCOTT
20 3,000.00 11,000.00
3,666.67
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
20
30
10
30
30
10
30
30
2,975.00
2,850.00
2,450.00
1,600.00
1,500.00
1,300.00
1,250.00
1,250.00
13,975.00
16,825.00
19,275.00
20,875.00
22,375.00
23,675.00
24,925.00
26,175.00
3,493.75
3,365.00
3,212.50
2,982.14
2,796.88
2,630.56
2,492.50
2,379.55
ENAME
DEPTNO SAL
Run Sum
Mov Avg
---------- ---------- --------- ---------- ---------ADAMS
20 1,100.00 27,275.00
2,272.92
JAMES
30
950.00 28,225.00
2,171.15
SMITH
20
800.00 29,025.00
2,073.21
14 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL>
2
3
4
ENAME
DEPTNO JOB
SAL
RANK
---------- ---------- --------- ---------- ---------KING
10 PRESIDENT
5000
1
FORD
20 ANALYST
3000
2
SCOTT
20 ANALYST
3000
2
JONES
20 MANAGER
2975
4
BLAKE
30 MANAGER
2850
5
CLARK
10 MANAGER
2450
6
ALLEN
30 SALESMAN
1600
7
TURNER
30 SALESMAN
1500
8
MILLER
10 CLERK
1300
9
MARTIN
30 SALESMAN
1250
10
WARD
30 SALESMAN
1250
10
ENAME
DEPTNO JOB
SAL
RANK
---------- ---------- --------- ---------- ---------ADAMS
20 CLERK
1100
12
JAMES
30 CLERK
950
13
SMITH
20 CLERK
800
14
14 rows selected.
SQL> COLUMN Deptno FORMAT 99
SQL> COLUMN Sal FORMAT 99999
SQL> /
ENAME
DEPTNO JOB
SAL
RANK
---------- ------ --------- ------ ---------KING
10 PRESIDENT
5000
1
FORD
SCOTT
JONES
BLAKE
CLARK
ALLEN
TURNER
MILLER
MARTIN
WARD
20
20
20
30
10
30
30
10
30
30
ANALYST
ANALYST
MANAGER
MANAGER
MANAGER
SALESMAN
SALESMAN
CLERK
SALESMAN
SALESMAN
3000
3000
2975
2850
2450
1600
1500
1300
1250
1250
2
2
4
5
6
7
8
9
10
10
ENAME
DEPTNO JOB
SAL
RANK
---------- ------ --------- ------ ---------ADAMS
20 CLERK
1100
12
JAMES
30 CLERK
950
13
SMITH
20 CLERK
800
14
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO JOB
SAL
RANK
---------- ------ --------- ------ ---------KING
10 PRESIDENT
5000
1
CLARK
10 MANAGER
2450
2
MILLER
10 CLERK
1300
3
FORD
20 ANALYST
3000
1
SCOTT
20 ANALYST
3000
1
JONES
20 MANAGER
2975
3
ADAMS
20 CLERK
1100
4
SMITH
20 CLERK
800
5
BLAKE
30 MANAGER
2850
1
ALLEN
30 SALESMAN
1600
2
TURNER
30 SALESMAN
1500
3
ENAME
DEPTNO JOB
SAL
RANK
---------- ------ --------- ------ ---------MARTIN
30 SALESMAN
1250
4
WARD
30 SALESMAN
1250
4
JAMES
30 CLERK
950
6
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3 OVER(
4
ORDER BY Sal DESC, Ename) "Run Sal"
5* FROM Emp
SQL> /
ENAME
DEPTNO JOB
SAL
Run Sal
---------- ------ --------- ------ ---------KING
10 PRESIDENT
5000
5000
FORD
20 ANALYST
3000
8000
SCOTT
20 ANALYST
3000
11000
JONES
20 MANAGER
2975
13975
BLAKE
30 MANAGER
2850
16825
CLARK
10 MANAGER
2450
19275
ALLEN
30 SALESMAN
1600
20875
TURNER
30 SALESMAN
1500
22375
MILLER
10 CLERK
1300
23675
MARTIN
30 SALESMAN
1250
24925
WARD
30 SALESMAN
1250
26175
ENAME
DEPTNO JOB
SAL
Run Sal
---------- ------ --------- ------ ---------ADAMS
20 CLERK
1100
27275
JAMES
30 CLERK
950
28225
SMITH
20 CLERK
800
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO JOB
SAL
Run Sal
---------- ------ --------- ------ ---------KING
10 PRESIDENT
5000
5000
CLARK
10 MANAGER
2450
7450
MILLER
10 CLERK
1300
8750
FORD
20 ANALYST
3000
3000
SCOTT
20 ANALYST
3000
6000
JONES
20 MANAGER
2975
8975
ADAMS
20 CLERK
1100
10075
SMITH
20 CLERK
800
10875
BLAKE
30 MANAGER
2850
2850
ALLEN
30 SALESMAN
1600
4450
TURNER
30 SALESMAN
1500
5950
ENAME
DEPTNO JOB
SAL
Run Sal
---------- ------ --------- ------ ---------MARTIN
30 SALESMAN
1250
7200
WARD
30 SALESMAN
1250
8450
JAMES
30 CLERK
950
9400
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO JOB
SAL
Run Sal
---------- ------ --------- ------ ---------FORD
20 ANALYST
3000
3000
SCOTT
20 ANALYST
3000
6000
MILLER
10 CLERK
1300
1300
ADAMS
20 CLERK
1100
2400
JAMES
30 CLERK
950
3350
SMITH
20 CLERK
800
4150
JONES
20 MANAGER
2975
2975
BLAKE
30 MANAGER
2850
5825
CLARK
10 MANAGER
2450
8275
KING
10 PRESIDENT
5000
5000
ALLEN
30 SALESMAN
1600
1600
ENAME
DEPTNO JOB
SAL
Run Sal
---------- ------ --------- ------ ---------TURNER
30 SALESMAN
1500
3100
MARTIN
30 SALESMAN
1250
4350
WARD
30 SALESMAN
1250
5600
14 rows selected.
SQL> SELECT Deptno, SUM(Sal) SalSum
2 FROM Emp
3 GROUP BY ROLLUP(Deptno);
DEPTNO
SALSUM
------ ---------10
8750
20
10875
30
9400
29025
SQL> ED
Wrote file afiedt.buf
1 SELECT Deptno, SUM(Sal) SalSum
2 FROM Emp
3 WHERE Deptno = &GDeptno
4* GROUP BY ROLLUP(Deptno)
SQL> /
Enter value for gdeptno: 10
DEPTNO
SALSUM
------ ---------10
8750
8750
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
ENAME
DEPTNO JOB
SAL
Run Sal Mov Avg Sal
---------- ------ --------- ------ ---------- ----------FORD
20 ANALYST
3000
3000
3000
SCOTT
20 ANALYST
3000
6000
3000
MILLER
10 CLERK
1300
1300
1300
ADAMS
20 CLERK
1100
2400
1200
JAMES
30 CLERK
950
3350 1116.66667
SMITH
20 CLERK
800
4150
1037.5
JONES
20 MANAGER
2975
2975
2975
BLAKE
30 MANAGER
2850
5825
2912.5
CLARK
10 MANAGER
2450
8275 2758.33333
KING
10 PRESIDENT
5000
5000
5000
ALLEN
30 SALESMAN
1600
1600
1600
ENAME
DEPTNO JOB
SAL
Run Sal Mov Avg Sal
---------- ------ --------- ------ ---------- ----------TURNER
30 SALESMAN
1500
3100
1550
MARTIN
30 SALESMAN
1250
4350
1450
WARD
30 SALESMAN
1250
5600
1400
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
ENAME
DEPTNO JOB
SAL
Run Sal Mov Avg Sal
---------- ------ --------- ------ ---------- ----------KING
10 PRESIDENT
5000
5000
5000
CLARK
10 MANAGER
2450
7450
3725
MILLER
10 CLERK
1300
8750 2916.66667
FORD
20 ANALYST
3000
3000
3000
SCOTT
20 ANALYST
3000
6000
3000
JONES
20 MANAGER
2975
8975 2991.66667
ADAMS
20 CLERK
1100
10075
2518.75
SMITH
20 CLERK
800
10875
2175
BLAKE
30 MANAGER
2850
2850
2850
ALLEN
30 SALESMAN
1600
4450
2225
TURNER
30 SALESMAN
1500
5950 1983.33333
ENAME
DEPTNO JOB
SAL
Run Sal Mov Avg Sal
---------- ------ --------- ------ ---------- ----------MARTIN
30 SALESMAN
1250
7200
1800
WARD
30 SALESMAN
1250
8450
1690
JAMES
30 CLERK
950
9400 1566.66667
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
SELECT *
FROM(SELECT Ename, Deptno, Sal,
DENSE_RANK()
OVER(PARTITION BY DeptNo
ORDER BY Sal DESC) "TOP Sal"
FROM Emp)
WHERE "TOP Sal" <=3
ORDER BY DeptNo, Sal DESC;
ENAME
DEPTNO
SAL
TOP Sal
---------- ------ ------ ---------KING
10
5000
1
CLARK
10
2450
2
MILLER
10
1300
3
FORD
20
3000
1
SCOTT
20
3000
1
JONES
20
2975
2
ADAMS
20
1100
3
BLAKE
30
2850
1
ALLEN
30
1600
2
TURNER
30
1500
3
10 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
SELECT *
FROM(SELECT Ename, Deptno, Sal,
DENSE_RANK()
OVER(PARTITION BY DeptNo
ORDER BY Sal DESC) "TOP Sal"
FROM Emp)
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------KING
10
5000
5000
FORD
20
3000
11000
SCOTT
20
3000
11000
JONES
20
2975
13975
BLAKE
30
2850
16825
CLARK
10
2450
19275
ALLEN
30
1600
20875
TURNER
30
1500
22375
MILLER
10
1300
23675
MARTIN
30
1250
26175
WARD
30
1250
26175
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------ADAMS
20
1100
27275
JAMES
30
950
28225
SMITH
20
800
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------KING
10
5000
5000
FORD
20
3000
8000
SCOTT
20
3000
11000
JONES
20
2975
13975
BLAKE
30
2850
16825
CLARK
10
2450
19275
ALLEN
30
1600
20875
TURNER
MILLER
MARTIN
WARD
30
10
30
30
1500
1300
1250
1250
22375
23675
24925
26175
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------ADAMS
20
1100
27275
JAMES
30
950
28225
SMITH
20
800
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------KING
10
5000
5000
CLARK
10
2450
7450
MILLER
10
1300
8750
FORD
20
3000
3000
SCOTT
20
3000
6000
JONES
20
2975
8975
ADAMS
20
1100
10075
SMITH
20
800
10875
BLAKE
30
2850
2850
ALLEN
30
1600
4450
TURNER
30
1500
5950
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------MARTIN
30
1250
7200
WARD
30
1250
8450
JAMES
30
950
9400
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------KING
10
5000
5000
CLARK
10
2450
7450
MILLER
10
1300
8750
FORD
20
3000
3000
SCOTT
20
3000
6000
JONES
20
2975
8975
ADAMS
20
1100
10075
SMITH
20
800
10875
BLAKE
30
2850
2850
ALLEN
30
1600
4450
TURNER
30
1500
5950
ENAME
DEPTNO
SAL
Run Sal
---------- ------ ------ ---------MARTIN
30
1250
7200
WARD
30
1250
8450
JAMES
30
950
9400
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
DEPTNO
-----10
10
10
20
20
20
20
20
30
30
30
ENAME
SAL Sliding Total
---------- ------ ------------CLARK
2450
2450
KING
5000
7450
MILLER
1300
8750
ADAMS
1100
1100
FORD
3000
4100
JONES
2975
7075
SCOTT
3000
8975
SMITH
800
6775
ALLEN
1600
1600
BLAKE
2850
4450
JAMES
950
5400
DEPTNO
-----30
30
30
ENAME
SAL Sliding Total
---------- ------ ------------MARTIN
1250
5050
TURNER
1500
3700
WARD
1250
4000
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
SELECT Ename,
HireDate,
COUNT(*)
OVER(ORDER BY HireDate ASC
RANGE 100 PRECEDING) HireCnt
FROM Emp
ORDER BY HireDate ASC;
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
HIRECNT
--------- ---------17-DEC-80
1
20-FEB-81
2
22-FEB-81
3
02-APR-81
3
01-MAY-81
4
09-JUN-81
3
08-SEP-81
2
28-SEP-81
2
17-NOV-81
3
03-DEC-81
5
03-DEC-81
5
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
HIRECNT
--------- ---------23-JAN-82
4
09-DEC-82
1
12-JAN-83
2
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
SELECT Ename,
HireDate, HireDate - 100 "100Days",
COUNT(*)
OVER(ORDER BY HireDate ASC
RANGE 100 PRECEDING) HireCnt
FROM Emp
ORDER BY HireDate ASC
/
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
--------17-DEC-80
20-FEB-81
22-FEB-81
02-APR-81
01-MAY-81
09-JUN-81
08-SEP-81
28-SEP-81
17-NOV-81
03-DEC-81
03-DEC-81
100Days
HIRECNT
--------- ---------08-SEP-80
1
12-NOV-80
2
14-NOV-80
3
23-DEC-80
3
21-JAN-81
4
01-MAR-81
3
31-MAY-81
2
20-JUN-81
2
09-AUG-81
3
25-AUG-81
5
25-AUG-81
5
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
--------23-JAN-82
09-DEC-82
12-JAN-83
100Days
HIRECNT
--------- ---------15-OCT-81
4
31-AUG-82
1
04-OCT-82
2
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL AVGSAL
--------- ------ ---------17-DEC-80
800
800.00
20-FEB-81
1600
1,200.00
22-FEB-81
1250
1,216.67
02-APR-81
2975
1,941.67
01-MAY-81
2850
2,168.75
09-JUN-81
2450
2,758.33
08-SEP-81
1500
1,975.00
28-SEP-81
1250
1,375.00
17-NOV-81
5000
2,583.33
03-DEC-81
950
2,340.00
03-DEC-81
3000
2,340.00
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL AVGSAL
--------- ------ ---------23-JAN-82
1300
2,562.50
09-DEC-82
3000
3,000.00
12-JAN-83
1100
2,050.00
14 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL>
2
3
4
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
HIREDATE
SAL
PRESAL
--------- ---------- ---------17-DEC-80
800
0
20-FEB-81
1600
800
22-FEB-81
1250
1600
02-APR-81
2975
1250
01-MAY-81
2850
2975
09-JUN-81
2450
2850
08-SEP-81
1500
2450
28-SEP-81
1250
1500
KING
JAMES
FORD
17-NOV-81
03-DEC-81
03-DEC-81
5000
950
3000
1250
5000
950
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL
PRESAL
--------- ---------- ---------23-JAN-82
1300
3000
09-DEC-82
3000
1300
12-JAN-83
1100
3000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL
PRESAL
--------- ---------- ---------17-DEC-80
800
20-FEB-81
1600
800
22-FEB-81
1250
1600
02-APR-81
2975
1250
01-MAY-81
2850
2975
09-JUN-81
2450
2850
08-SEP-81
1500
2450
28-SEP-81
1250
1500
17-NOV-81
5000
1250
03-DEC-81
950
5000
03-DEC-81
3000
950
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL
PRESAL
--------- ---------- ---------23-JAN-82
1300
3000
09-DEC-82
3000
1300
12-JAN-83
1100
3000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12* FROM
SQL> /
Emp
ENAME
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
---------- --------- ---------- ---------- ---------- ---------- ---------PRESAL5
---------SMITH
17-DEC-80
800
ALLEN
20-FEB-81
1600
800
WARD
22-FEB-81
1250
1600
800
ENAME
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
---------- --------- ---------- ---------- ---------- ---------- ---------PRESAL5
---------JONES
02-APR-81
2975
1250
1600
800
BLAKE
CLARK
01-MAY-81
2850
2975
1250
1600
800
09-JUN-81
2450
2850
2975
1250
1600
800
ENAME
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
---------- --------- ---------- ---------- ---------- ---------- ---------PRESAL5
---------TURNER
08-SEP-81
1500
2450
2850
2975
1250
1600
MARTIN
28-SEP-81
1250
1500
2450
2850
2975
17-NOV-81
5000
1250
1500
2450
2850
1250
KING
2975
ENAME
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
---------- --------- ---------- ---------- ---------- ---------- ---------PRESAL5
---------JAMES
03-DEC-81
950
5000
1250
1500
2450
2850
FORD
03-DEC-81
3000
950
5000
1250
1500
23-JAN-82
1300
3000
950
5000
1250
2450
MILLER
1500
ENAME
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
---------- --------- ---------- ---------- ---------- ---------- ---------PRESAL5
---------SCOTT
09-DEC-82
3000
1300
3000
950
5000
1250
ADAMS
12-JAN-83
1100
3000
1300
3000
950
5000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
--------- ---------- ---------- ---------- ---------- ---------17-DEC-80
800
20-FEB-81
1600
800
22-FEB-81
1250
1600
800
02-APR-81
2975
1250
1600
800
01-MAY-81
2850
2975
1250
1600
800
09-JUN-81
2450
2850
2975
1250
1600
08-SEP-81
1500
2450
2850
2975
1250
28-SEP-81
1250
1500
2450
2850
2975
17-NOV-81
5000
1250
1500
2450
2850
03-DEC-81
950
5000
1250
1500
2450
03-DEC-81
3000
950
5000
1250
1500
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL
PRESAL1
PRESAL2
PRESAL3
PRESAL4
--------- ---------- ---------- ---------- ---------- ---------23-JAN-82
1300
3000
950
5000
1250
09-DEC-82
3000
1300
3000
950
5000
12-JAN-83
1100
3000
1300
3000
950
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
HIREDATE
SAL
PRESAL
--------- ---------- ---------17-DEC-80
800
20-FEB-81
1600
800
22-FEB-81
1250
1600
02-APR-81
2975
1250
01-MAY-81
2850
2975
09-JUN-81
2450
2850
08-SEP-81
1500
2450
28-SEP-81
1250
1500
17-NOV-81
5000
1250
03-DEC-81
950
5000
03-DEC-81
3000
950
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL
PRESAL
--------- ---------- ---------23-JAN-82
1300
3000
09-DEC-82
3000
1300
12-JAN-83
1100
3000
14 rows selected.
SQL> /
Enter value for goffset: 2
old
2: LAG(Sal, &GOffset)
new
2: LAG(Sal, 2)
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL
PRESAL
--------- ---------- ---------17-DEC-80
800
20-FEB-81
1600
22-FEB-81
1250
800
02-APR-81
2975
1600
01-MAY-81
2850
1250
09-JUN-81
2450
2975
08-SEP-81
1500
2850
28-SEP-81
1250
2450
17-NOV-81
5000
1500
03-DEC-81
950
1250
03-DEC-81
3000
5000
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL
PRESAL
--------- ---------- ---------23-JAN-82
1300
950
09-DEC-82
3000
3000
12-JAN-83
1100
1300
14 rows selected.
SQL> ED
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, HireDate, Sal,
2 LAG(Sal, &GOffset)
3 OVER(ORDER BY HireDate) PreSal
4 FROM Emp
5* WHERE Ename = UPPER('&GEname')
SQL> /
Enter value for goffset: 1
Enter value for gename: king
ENAME
HIREDATE
SAL
PRESAL
---------- --------- ---------- ---------KING
17-NOV-81
5000
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, HireDate, Sal,
2 LAG(Sal, &GOffset)
3 OVER(ORDER BY HireDate) PreSal
4 FROM Emp
5* WHERE Deptno = 10
SQL> /
Enter value for goffset: 1
ENAME
---------CLARK
KING
MILLER
HIREDATE
SAL
PRESAL
--------- ---------- ---------09-JUN-81
2450
17-NOV-81
5000
2450
23-JAN-82
1300
5000
SQL> cl scr
SQL>
2
3
4
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL
NEXTSAL
--------- ---------- ---------17-DEC-80
800
1600
20-FEB-81
1600
1250
22-FEB-81
1250
2975
02-APR-81
2975
2850
01-MAY-81
2850
2450
09-JUN-81
2450
1500
08-SEP-81
1500
1250
28-SEP-81
1250
5000
17-NOV-81
5000
950
03-DEC-81
950
3000
03-DEC-81
3000
1300
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL
NEXTSAL
--------- ---------- ---------23-JAN-82
1300
3000
09-DEC-82
3000
1100
12-JAN-83
1100
0
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
PRESAL
CURRSAL
NEXTSAL
--------- ---------- ---------- ---------17-DEC-80
0
800
1600
20-FEB-81
800
1600
1250
22-FEB-81
1600
1250
2975
02-APR-81
1250
2975
2850
01-MAY-81
2975
2850
2450
09-JUN-81
2850
2450
1500
08-SEP-81
2450
1500
1250
28-SEP-81
1500
1250
5000
17-NOV-81
1250
5000
950
03-DEC-81
5000
950
3000
03-DEC-81
950
3000
1300
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
PRESAL
CURRSAL
NEXTSAL
--------- ---------- ---------- ---------23-JAN-82
3000
1300
3000
09-DEC-82
1300
3000
1100
12-JAN-83
3000
1100
0
14 rows selected.
SQL> ED
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
PRESAL2
PRESAL1
CURRSAL
NEXTSAL1
NEXTSAL2
--------- ---------- ---------- ---------- ---------- ---------17-DEC-80
0
0
800
1600
1250
20-FEB-81
0
800
1600
1250
2975
22-FEB-81
800
1600
1250
2975
2850
02-APR-81
1600
1250
2975
2850
2450
01-MAY-81
1250
2975
2850
2450
1500
09-JUN-81
2975
2850
2450
1500
1250
08-SEP-81
2850
2450
1500
1250
5000
28-SEP-81
2450
1500
1250
5000
950
17-NOV-81
1500
1250
5000
950
3000
03-DEC-81
1250
5000
950
3000
1300
03-DEC-81
5000
950
3000
1300
3000
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
PRESAL2
PRESAL1
CURRSAL
NEXTSAL1
NEXTSAL2
--------- ---------- ---------- ---------- ---------- ---------23-JAN-82
950
3000
1300
3000
1100
09-DEC-82
3000
1300
3000
1100
0
12-JAN-83
1300
3000
1100
0
0
14 rows selected.
SQL> cl scr
SQL>
2
3
4
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL DIFFPRESAL
--------- ---------- ---------17-DEC-80
800
800
20-FEB-81
1600
800
22-FEB-81
1250
-350
02-APR-81
2975
1725
01-MAY-81
2850
-125
09-JUN-81
2450
-400
08-SEP-81
1500
-950
28-SEP-81
1250
-250
17-NOV-81
5000
3750
03-DEC-81
950
-4050
03-DEC-81
3000
2050
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL DIFFPRESAL
--------- ---------- ---------23-JAN-82
1300
-1700
09-DEC-82
3000
1700
12-JAN-83
1100
-1900
14 rows selected.
SQL> cl scr
SQL>
2
3
4
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL DIFFNEXTSAL
--------- ---------- ----------17-DEC-80
800
-800
20-FEB-81
1600
350
22-FEB-81
1250
-1725
02-APR-81
2975
125
01-MAY-81
2850
400
09-JUN-81
2450
950
08-SEP-81
1500
250
28-SEP-81
1250
-3750
17-NOV-81
5000
4050
03-DEC-81
950
-2050
03-DEC-81
3000
1700
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL DIFFNEXTSAL
--------- ---------- ----------23-JAN-82
1300
-1700
09-DEC-82
3000
1900
12-JAN-83
1100
1100
14 rows selected.
SQL> cl scr
SQL> COLUMN Remarks FORMAT A30
SQL> SELECT E1.Ename, E1.HireDate, E1.Sal,
ABS(E1.DiffNExtSal)||DECODE(SIGN(E1.DiffNextSal),
2
3
4
5
6
7
8
ENAME
---------SMITH
ALLEN
WARD
JONES
BLAKE
CLARK
TURNER
MARTIN
KING
JAMES
FORD
HIREDATE
SAL REMARKS
--------- ---------- -----------------------------17-DEC-80
800 800 Less Than Next Salary.
20-FEB-81
1600 350 More Than Next Salary.
22-FEB-81
1250 1725 Less Than Next Salary.
02-APR-81
2975 125 More Than Next Salary.
01-MAY-81
2850 400 More Than Next Salary.
09-JUN-81
2450 950 More Than Next Salary.
08-SEP-81
1500 250 More Than Next Salary.
28-SEP-81
1250 3750 Less Than Next Salary.
17-NOV-81
5000 4050 More Than Next Salary.
03-DEC-81
950 2050 Less Than Next Salary.
03-DEC-81
3000 1700 More Than Next Salary.
ENAME
---------MILLER
SCOTT
ADAMS
HIREDATE
SAL REMARKS
--------- ---------- -----------------------------23-JAN-82
1300 1700 Less Than Next Salary.
09-DEC-82
3000 1900 More Than Next Salary.
12-JAN-83
1100 1100 More Than Next Salary.
14 rows selected.
SQL> cl scr
SQL>
SQL>
2
3
4
5
6
7
8
9
10
11
SQL>
2
3
4
5
6
7
8
9
DEPTNO ENAME
------ ---------10 CLARK
KING
MILLER
HIREDATE
--------09-JUN-81
17-NOV-81
23-JAN-82
LAST_HIRE DAYSDIFF
--------- ---------------------------------------0 Days of Difference.
09-JUN-81 161 Days of Difference.
17-NOV-81 67 Days of Difference.
20 SMITH
JONES
FORD
SCOTT
ADAMS
17-DEC-80
02-APR-81
03-DEC-81
09-DEC-82
12-JAN-83
17-DEC-80
02-APR-81
03-DEC-81
09-DEC-82
30 ALLEN
20-FEB-81
DEPTNO ENAME
------ ---------30 WARD
BLAKE
TURNER
MARTIN
JAMES
HIREDATE
--------22-FEB-81
01-MAY-81
08-SEP-81
28-SEP-81
03-DEC-81
0 Days of Difference.
106 Days of Difference.
245 Days of Difference.
371 Days of Difference.
34 Days of Difference.
0 Days of Difference.
LAST_HIRE
--------20-FEB-81
22-FEB-81
01-MAY-81
08-SEP-81
28-SEP-81
DAYSDIFF
---------------------------------------2 Days of Difference.
68 Days of Difference.
130 Days of Difference.
20 Days of Difference.
66 Days of Difference.
14 rows selected.
SQL> BREAK ON Deptno DUP
SQL> cl scr
SQL>
2
3
4
5
DaysDiff
ENAME
DEPTNO
SAL MAX_SAL_NA
---------- ------ ---------- ---------KING
10
5000 KING
CLARK
10
2450 KING
MILLER
10
1300 KING
SCOTT
20
3000 FORD
FORD
20
3000 FORD
JONES
20
2975 FORD
ADAMS
20
1100 FORD
SMITH
20
800 FORD
BLAKE
30
2850 BLAKE
ALLEN
30
1600 BLAKE
TURNER
30
1500 BLAKE
ENAME
DEPTNO
SAL MAX_SAL_NA
---------- ------ ---------- ---------WARD
30
1250 BLAKE
MARTIN
30
1250 BLAKE
JAMES
30
950 BLAKE
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL MAX_SAL_NA
---------- ------ ---------- ---------KING
10
5000 KING
CLARK
10
2450 KING
MILLER
10
1300 KING
FORD
20
3000 FORD
SCOTT
20
3000 FORD
JONES
20
2975 FORD
ADAMS
20
1100 FORD
SMITH
20
800 FORD
BLAKE
30
2850 BLAKE
ALLEN
30
1600 BLAKE
TURNER
30
1500 BLAKE
ENAME
DEPTNO
SAL MAX_SAL_NA
---------- ------ ---------- ---------MARTIN
30
1250 BLAKE
WARD
30
1250 BLAKE
JAMES
30
950 BLAKE
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------KING
10
5000 KING
CLARK
10
2450 CLARK
MILLER
FORD
SCOTT
JONES
ADAMS
SMITH
BLAKE
ALLEN
TURNER
10
20
20
20
20
20
30
30
30
1300
3000
3000
2975
1100
800
2850
1600
1500
MILLER
SCOTT
SCOTT
JONES
ADAMS
SMITH
BLAKE
ALLEN
TURNER
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------MARTIN
30
1250 WARD
WARD
30
1250 WARD
JAMES
30
950 JAMES
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------KING
10
5000 KING
CLARK
10
2450 KING
MILLER
10
1300 KING
FORD
20
3000 FORD
SCOTT
20
3000 FORD
JONES
20
2975 FORD
ADAMS
20
1100 FORD
SMITH
20
800 FORD
BLAKE
30
2850 BLAKE
ALLEN
30
1600 BLAKE
TURNER
30
1500 BLAKE
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------MARTIN
30
1250 BLAKE
WARD
30
1250 BLAKE
JAMES
30
950 BLAKE
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL FIRST
---------- ------ ---------- ---------KING
10
5000 KING
CLARK
10
2450 KING
MILLER
10
1300 KING
FORD
20
3000 FORD
SCOTT
20
3000 FORD
JONES
20
2975 FORD
ADAMS
20
1100 FORD
SMITH
20
800 FORD
BLAKE
30
2850 BLAKE
ALLEN
30
1600 BLAKE
TURNER
30
1500 BLAKE
ENAME
DEPTNO
SAL FIRST
---------- ------ ---------- ---------MARTIN
30
1250 BLAKE
WARD
30
1250 BLAKE
JAMES
30
950 BLAKE
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------KING
10
5000 KING
CLARK
10
2450 CLARK
MILLER
10
1300 MILLER
FORD
20
3000 SCOTT
SCOTT
20
3000 SCOTT
JONES
20
2975 JONES
ADAMS
20
1100 ADAMS
SMITH
20
800 SMITH
BLAKE
30
2850 BLAKE
ALLEN
30
1600 ALLEN
TURNER
30
1500 TURNER
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------MARTIN
30
1250 WARD
WARD
30
1250 WARD
JAMES
30
950 JAMES
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------CLARK
10
2450 MILLER
KING
10
5000 MILLER
MILLER
10
1300 MILLER
ADAMS
20
1100 SMITH
FORD
20
3000 SMITH
JONES
20
2975 SMITH
SCOTT
20
3000 SMITH
SMITH
20
800 SMITH
ALLEN
30
1600 WARD
BLAKE
30
2850 WARD
JAMES
30
950 WARD
ENAME
DEPTNO
SAL LAST
---------- ------ ---------- ---------MARTIN
30
1250 WARD
TURNER
30
1500 WARD
WARD
30
1250 WARD
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------JAMES
30
950 JAMES
MARTIN
30
1250 JAMES
WARD
30
1250 JAMES
TURNER
30
1500 JAMES
ALLEN
30
1600 JAMES
BLAKE
30
2850 JAMES
6 rows selected.
Min_Sal_Name
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------JAMES
30
950 JAMES
MARTIN
30
1250 WARD
WARD
30
1250 WARD
TURNER
30
1500 TURNER
ALLEN
30
1600 ALLEN
BLAKE
30
2850 BLAKE
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
Min_Sal_Name
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------JAMES
30
950 BLAKE
MARTIN
30
1250 BLAKE
WARD
30
1250 BLAKE
TURNER
30
1500 BLAKE
ALLEN
30
1600 BLAKE
BLAKE
30
2850 BLAKE
6 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
6
ENAME
SAL MIN_SAL_NA
Min_Sal_Name
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------SMITH
20
800 SMITH
JAMES
30
950 SMITH
ADAMS
20
1100 SMITH
MARTIN
30
1250 SMITH
WARD
30
1250 SMITH
MILLER
10
1300 SMITH
TURNER
30
1500 SMITH
ALLEN
30
1600 SMITH
CLARK
10
2450 SMITH
BLAKE
30
2850 SMITH
JONES
20
2975 SMITH
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------FORD
20
3000 SMITH
SCOTT
20
3000 SMITH
KING
10
5000 SMITH
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
Min_Sal_Name
2
3
4
5
6
7*
SQL>
FIRST_VALUE(Ename)
OVER(
PARTITION BY Deptno
ORDER BY Sal ASC
ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)
FROM Emp
/
Min_Sal_Name
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------MILLER
10
1300 MILLER
CLARK
10
2450 MILLER
KING
10
5000 MILLER
SMITH
20
800 SMITH
ADAMS
20
1100 SMITH
JONES
20
2975 SMITH
FORD
20
3000 SMITH
SCOTT
20
3000 SMITH
JAMES
30
950 JAMES
MARTIN
30
1250 JAMES
WARD
30
1250 JAMES
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------TURNER
30
1500 JAMES
ALLEN
30
1600 JAMES
BLAKE
30
2850 JAMES
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Deptno, Sal,
2 FIRST_VALUE(Ename)
3 OVER(
4 PARTITION BY Deptno
5 ORDER BY Sal ASC
6 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)
7 LAST_VALUE(Ename)
8 OVER(
9 PARTITION BY Deptno
10 ORDER BY Sal ASC
11 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)
12* FROM Emp
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
Min_Sal_Name,
Max_Sal_Name
Min_Sal_Name,
10
11
12*
SQL>
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------MILLER
10
1300 MILLER
CLARK
10
2450 MILLER
KING
10
5000 MILLER
SMITH
20
800 SMITH
ADAMS
20
1100 SMITH
JONES
20
2975 SMITH
FORD
20
3000 SMITH
SCOTT
20
3000 SMITH
JAMES
30
950 JAMES
MARTIN
30
1250 JAMES
WARD
30
1250 JAMES
MAX_SAL_NA
---------KING
KING
KING
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
BLAKE
BLAKE
BLAKE
ENAME
DEPTNO
SAL MIN_SAL_NA
---------- ------ ---------- ---------TURNER
30
1500 JAMES
ALLEN
30
1600 JAMES
BLAKE
30
2850 JAMES
MAX_SAL_NA
---------BLAKE
BLAKE
BLAKE
Max_Sal_Name
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL
---------- ------ ---------SUM(SAL)OVER(ORDERBYSALASCROWSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWING)
----------------------------------------------------------------------------SMITH
20
800
29025
JAMES
30
950
29025
ADAMS
20
1100
29025
ENAME
DEPTNO
SAL
---------- ------ ---------SUM(SAL)OVER(ORDERBYSALASCROWSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWING)
----------------------------------------------------------------------------MARTIN
30
1250
29025
WARD
30
1250
29025
MILLER
10
1300
29025
ENAME
DEPTNO
SAL
---------- ------ ---------SUM(SAL)OVER(ORDERBYSALASCROWSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWING)
----------------------------------------------------------------------------TURNER
30
1500
29025
ALLEN
30
1600
29025
CLARK
10
2450
29025
ENAME
DEPTNO
SAL
---------- ------ ---------SUM(SAL)OVER(ORDERBYSALASCROWSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWING)
----------------------------------------------------------------------------BLAKE
30
2850
29025
JONES
20
2975
29025
FORD
20
3000
29025
ENAME
DEPTNO
SAL
---------- ------ ---------SUM(SAL)OVER(ORDERBYSALASCROWSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWING)
----------------------------------------------------------------------------SCOTT
20
3000
29025
KING
10
5000
29025
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------SMITH
20
800
29025
JAMES
30
950
29025
ADAMS
20
1100
28225
MARTIN
30
1250
27275
WARD
30
1250
26175
MILLER
10
1300
24925
TURNER
30
1500
23675
ALLEN
30
1600
22375
CLARK
10
2450
20875
BLAKE
30
2850
19275
JONES
20
2975
16825
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------FORD
20
3000
13975
SCOTT
20
3000
11000
KING
10
5000
8000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------SMITH
20
800
29025
JAMES
30
950
29025
ADAMS
20
1100
29025
MARTIN
30
1250
28225
WARD
30
1250
27275
MILLER
10
1300
26175
TURNER
30
1500
24925
ALLEN
30
1600
23675
CLARK
10
2450
22375
BLAKE
30
2850
20875
JONES
20
2975
19275
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------FORD
20
3000
16825
SCOTT
20
3000
13975
KING
10
5000
11000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------SMITH
20
800
29025
JAMES
30
950
28225
ADAMS
20
1100
27275
MARTIN
30
1250
26175
WARD
30
1250
24925
MILLER
10
1300
23675
TURNER
30
1500
22375
ALLEN
30
1600
20875
CLARK
10
2450
19275
BLAKE
JONES
30
20
2850
2975
16825
13975
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------FORD
20
3000
11000
SCOTT
20
3000
8000
KING
10
5000
5000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6*
SQL>
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------SMITH
20
800
1750
JAMES
30
950
2850
ADAMS
20
1100
3300
MARTIN
30
1250
3600
WARD
30
1250
3800
MILLER
10
1300
4050
TURNER
30
1500
4400
ALLEN
30
1600
5550
CLARK
10
2450
6900
BLAKE
30
2850
8275
JONES
20
2975
8825
ENAME
DEPTNO
SAL Slide Sal
---------- ------ ---------- ---------FORD
20
3000
8975
SCOTT
20
3000
11000
KING
10
5000
8000
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL> /
ENAME
DEPTNO
SAL Center Sum Center Av
---------- ------ ---------- ---------- --------SMITH
20
800
1750
875.00
JAMES
30
950
2850
950.00
ADAMS
20
1100
3300 1,100.00
MARTIN
30
1250
3600 1,200.00
WARD
30
1250
3800 1,266.67
MILLER
10
1300
4050 1,350.00
TURNER
30
1500
4400 1,466.67
ALLEN
30
1600
5550 1,850.00
CLARK
10
2450
6900 2,300.00
BLAKE
30
2850
8275 2,758.33
JONES
20
2975
8825 2,941.67
ENAME
DEPTNO
SAL Center Sum Center Av
---------- ------ ---------- ---------- --------FORD
20
3000
8975 2,991.67
SCOTT
20
3000
11000 3,666.67
KING
10
5000
8000 4,000.00
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
ROW_NUMBER()
OVER(ORDER BY Sal DESC
NULLS LAST) RowNo,
Ename, Deptno
FROM Emp;
ROWNO
---------1
2
3
4
5
6
7
8
9
10
11
ENAME
DEPTNO
---------- -----KING
10
FORD
20
SCOTT
20
JONES
20
BLAKE
30
CLARK
10
ALLEN
30
TURNER
30
MILLER
10
MARTIN
30
WARD
30
ROWNO
---------12
13
14
ENAME
DEPTNO
---------- -----ADAMS
20
JAMES
30
SMITH
20
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT
ROW_NUMBER()
OVER(
PARTITION BY Deptno
ORDER BY Sal DESC
NULLS LAST) RowNo,
Ename, Deptno
FROM Emp
/
ROWNO
---------1
2
3
1
2
3
4
5
1
2
3
ENAME
DEPTNO
---------- -----KING
10
CLARK
10
MILLER
10
FORD
20
SCOTT
20
JONES
20
ADAMS
20
SMITH
20
BLAKE
30
ALLEN
30
TURNER
30
ROWNO
---------4
5
6
ENAME
DEPTNO
---------- -----MARTIN
30
WARD
30
JAMES
30
14 rows selected.
SQL> cl scr
SQL> SELECT Deptno, Ename,
2
ROW_NUMBER()
3
OVER (PARTITION BY Deptno
4
ORDER BY Sal DESC NULLS LAST)
5
FROM Emp;
DEPTNO
-----10
10
10
20
20
20
20
20
30
30
30
ENAME
SEQNO
---------- ---------KING
1
CLARK
2
MILLER
3
FORD
1
SCOTT
2
JONES
3
ADAMS
4
SMITH
5
BLAKE
1
ALLEN
2
TURNER
3
DEPTNO ENAME
SEQNO
------ ---------- ----------
SeqNo
30 MARTIN
30 WARD
30 JAMES
4
5
6
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9*
SQL>
SELECT E1.*
FROM (
SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST)
FROM Emp
) E1
WHERE E1.Seqno <= 3
/
DEPTNO
-----10
10
10
20
20
20
30
30
30
SeqNo
ENAME
SEQNO
---------- ---------KING
1
CLARK
2
MILLER
3
FORD
1
SCOTT
2
JONES
3
BLAKE
1
ALLEN
2
TURNER
3
9 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno;
DEPTNO
-----10
20
30
SQL>
2
3
4
5
FIRST
---------KING
FORD
BLAKE
SECOND
---------CLARK
SCOTT
ALLEN
THIRD
---------MILLER
JONES
TURNER
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third
FROM (SELECT Deptno, Ename,
6
7
8
9
10
11
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY HireDate NULLS LAST)
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno;
DEPTNO
-----10
20
30
FIRST
---------CLARK
SMITH
ALLEN
SECOND
---------KING
JONES
WARD
SeqNo
THIRD
---------MILLER
FORD
BLAKE
SQL> cl scr
SQL> SELECT Deptno, Ename,
2
ROW_NUMBER()
3
OVER (ORDER BY HireDate NULLS LAST)
4
FROM Emp;
DEPTNO
-----20
30
30
20
30
10
30
30
10
30
20
ENAME
SEQNO
---------- ---------SMITH
1
ALLEN
2
WARD
3
JONES
4
BLAKE
5
CLARK
6
TURNER
7
MARTIN
8
KING
9
JAMES
10
FORD
11
DEPTNO
-----10
20
20
ENAME
SEQNO
---------- ---------MILLER
12
SCOTT
13
ADAMS
14
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8*
SQL>
SELECT E1.*
FROM (
SELECT Deptno, Ename,
ROW_NUMBER()
OVER (ORDER BY HireDate NULLS LAST)
FROM Emp
) E1
WHERE E1.Seqno <= 3
/
DEPTNO ENAME
SEQNO
------ ---------- ----------
SeqNo
SeqNo
20 SMITH
30 ALLEN
30 WARD
SQL>
2
3
4
5
6
7
8
9
10
1
2
3
SELECT Deptno,
NVL(MAX(DECODE(Seqno, 1, Ename, NULL)), 'N.A.') First,
NVL(MAX(DECODE(Seqno, 2, Ename, NULL)), 'N.A') Second,
NVL(MAX(DECODE(Seqno, 3, Ename, NULL)), 'N.A') Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (ORDER BY HireDate NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 4 OR Deptno IN(10, 20, 30)
GROUP BY Deptno;
DEPTNO
-----10
20
30
FIRST
---------N.A.
SMITH
N.A.
SECOND
---------N.A
N.A
ALLEN
THIRD
---------N.A
N.A
WARD
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
SELECT Deptno,
DECODE (SeqNo, 1, Ename, NULL)
First,
DECODE (SeqNo, 2, Ename, NULL) Second,
DECODE (SeqNo, 3, Ename, NULL) Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3;
DEPTNO
-----10
10
10
20
20
20
30
30
30
FIRST
SECOND
THIRD
---------- ---------- ---------KING
CLARK
MILLER
FORD
SCOTT
JONES
BLAKE
ALLEN
TURNER
9 rows selected.
SQL>
2
3
4
5
6
7
8
9
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
10
11
DEPTNO
-----10
20
30
FIRST
---------KING
FORD
BLAKE
SECOND
---------CLARK
SCOTT
ALLEN
THIRD
---------MILLER
JONES
TURNER
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12*
SQL>
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third,
SUM(Sal)
FROM (SELECT Deptno, Ename, Sal
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno
/
ROW_NUMBER()
*
ERROR at line 7:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12*
SQL>
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third,
SUM(Sal)
FROM (SELECT Deptno, Ename, Sal,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno
/
DEPTNO
-----10
20
30
FIRST
---------KING
FORD
BLAKE
SECOND
---------CLARK
SCOTT
ALLEN
SQL> ED
Wrote file afiedt.buf
THIRD
SUM(SAL)
---------- ---------MILLER
8750
JONES
8975
TURNER
5950
1 SELECT Deptno,
2 DECODE(Seqno, 1, Ename, NULL) First,
3 DECODE(Seqno, 2, Ename, NULL) Second,
4 DECODE(Seqno, 3, Ename, NULL) Third,
5 Sal
6 FROM (SELECT Deptno, Ename, Sal,
7
ROW_NUMBER()
8
OVER (PARTITION BY Deptno
9
ORDER BY Sal DESC NULLS LAST) SeqNo
10
FROM Emp)
11 WHERE SeqNo <= 3
12* GROUP BY Deptno
SQL> /
DECODE(Seqno, 1, Ename, NULL) First,
*
ERROR at line 2:
ORA-00979: not a GROUP BY expression
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
SELECT Deptno,
DECODE(Seqno, 1, Ename, NULL) First,
DECODE(Seqno, 2, Ename, NULL) Second,
DECODE(Seqno, 3, Ename, NULL) Third,
Sal
FROM (SELECT Deptno, Ename, Sal,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
/
DEPTNO
-----10
10
10
20
20
20
30
30
30
FIRST
SECOND
THIRD
SAL
---------- ---------- ---------- ---------KING
5000
CLARK
2450
MILLER
1300
FORD
3000
SCOTT
3000
JONES
2975
BLAKE
2850
ALLEN
1600
TURNER
1500
9 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
SELECT
Empno,
Deptno,
HireDate,
FIRST_VALUE(HireDate)
OVER (
7
8
9
10
11
12
13
14
15
16
PARTITION BY Deptno
ORDER BY HireDate
) FirstDate,
HireDate - FIRST_VALUE(HireDate)
OVER (
PARTITION BY Deptno
ORDER BY HireDate
) NDays
FROM Emp
ORDER BY Deptno, NDays;
SELECT
Empno,
Deptno,
HireDate,
LAST_VALUE(Hiredate)
OVER (
PARTITION BY Deptno
ORDER BY HireDate
ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
) LastDate,
LAST_VALUE(Hiredate)
OVER (
PARTITION BY Deptno
ORDER BY Hiredate
ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
) - HireDate NDays
FROM Emp
ORDER BY Deptno, NDays DESC
/
7782
7839
7934
7369
7566
7902
7788
7876
7499
7521
7698
10
10
10
20
20
20
20
20
30
30
30
09-JUN-81
17-NOV-81
23-JAN-82
17-DEC-80
02-APR-81
03-DEC-81
09-DEC-82
12-JAN-83
20-FEB-81
22-FEB-81
01-MAY-81
23-JAN-82
23-JAN-82
23-JAN-82
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
12-JAN-83
03-DEC-81
03-DEC-81
03-DEC-81
228
67
0
756
650
405
34
0
286
284
216
SPOOL OFF
SELECT Deptno,
NVL(MAX(DECODE(Seqno, 1, Ename, NULL)), 'N.A.') First,
NVL(MAX(DECODE(Seqno, 2, Ename, NULL)), 'N.A') Second,
NVL(MAX(DECODE(Seqno, 3, Ename, NULL)), 'N.A') Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (ORDER BY HireDate NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 4 OR Deptno IN(10, 20, 30)
GROUP BY Deptno;
DEPTNO
---------10
20
30
FIRST
---------N.A.
SMITH
N.A.
SECOND
---------N.A
N.A
ALLEN
THIRD
---------N.A
N.A
WARD
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
SELECT Deptno,
DECODE (SeqNo, 1, Ename, NULL)
First,
DECODE (SeqNo, 2, Ename, NULL) Second,
DECODE (SeqNo, 3, Ename, NULL) Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3;
DEPTNO
---------10
10
10
20
FIRST
SECOND
THIRD
---------- ---------- ---------KING
CLARK
MILLER
FORD
20
20
30 BLAKE
30
30
SCOTT
JONES
ALLEN
TURNER
9 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno;
DEPTNO
---------10
20
30
FIRST
---------KING
FORD
BLAKE
SECOND
---------CLARK
SCOTT
ALLEN
THIRD
---------MILLER
JONES
TURNER
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12*
SQL>
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third,
Sal
FROM (SELECT Deptno, Ename, Sal
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno
/
ROW_NUMBER()
*
ERROR at line 7:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third,
Sal
FROM (SELECT Deptno, Ename, Sal,
7
ROW_NUMBER()
8
OVER (PARTITION BY Deptno
9
ORDER BY Sal DESC NULLS LAST)
10
FROM Emp)
11 WHERE SeqNo <= 3
12* GROUP BY Deptno
SQL> /
Sal
*
ERROR at line 5:
ORA-00979: not a GROUP BY expression
SeqNo
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12*
SQL>
SELECT Deptno,
MAX(DECODE(Seqno, 1, Ename, NULL)) First,
MAX(DECODE(Seqno, 2, Ename, NULL)) Second,
MAX(DECODE(Seqno, 3, Ename, NULL)) Third,
SUM(Sal) SalSum
FROM (SELECT Deptno, Ename, Sal,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
GROUP BY Deptno
/
DEPTNO
---------10
20
30
FIRST
---------KING
FORD
BLAKE
SECOND
---------CLARK
SCOTT
ALLEN
THIRD
SALSUM
---------- ---------MILLER
8750
JONES
8975
TURNER
5950
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT Deptno,
DECODE (SeqNo, 1, Ename, NULL)
First,
DECODE (SeqNo, 2, Ename, NULL) Second,
DECODE (SeqNo, 3, Ename, NULL) Third,
Sal
FROM (SELECT Deptno, Ename, Sal
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3;
ROW_NUMBER()
*
ERROR at line 7:
ORA-00923: FROM keyword not found where expected
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11*
SQL>
SELECT Deptno,
DECODE (SeqNo, 1, Ename, NULL)
First,
DECODE (SeqNo, 2, Ename, NULL) Second,
DECODE (SeqNo, 3, Ename, NULL) Third,
Sal
FROM (SELECT Deptno, Ename, Sal,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3
/
DEPTNO
---------10
10
10
20
20
20
30
30
30
FIRST
SECOND
THIRD
SAL
---------- ---------- ---------- ---------KING
5000
CLARK
2450
MILLER
1300
FORD
3000
SCOTT
3000
JONES
2975
BLAKE
2850
ALLEN
1600
TURNER
1500
9 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
SELECT Deptno,
NVL(DECODE(SeqNo, 1, Ename, NULL), '***')
First,
NVL(DECODE(SeqNo, 2, Ename, NULL), '***') Second,
NVL(DECODE(SeqNo, 3, Ename, NULL), '***') Third
FROM (SELECT Deptno, Ename,
ROW_NUMBER()
OVER (PARTITION BY Deptno
ORDER BY Sal DESC NULLS LAST) SeqNo
FROM Emp)
WHERE SeqNo <= 3;
DEPTNO
---------10
10
10
20
20
20
30
30
30
FIRST
---------KING
***
***
FORD
***
***
BLAKE
***
***
9 rows selected.
SQL> cl scr
SQL> SELECT
2
DECODE(RN,
SECOND
---------***
CLARK
***
***
SCOTT
***
***
ALLEN
***
THIRD
---------***
***
MILLER
***
***
JONES
***
***
TURNER
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
1, Ename,
2, Ename,
3, Ename,
'Rest'
),
SUM(SAL)
FROM (
SELECT
ROW_NUMBER()
OVER(ORDER BY Sal DESC) RN,
Ename,
SAL
FROM EMP
)
GROUP BY
DECODE(RN,
1, ENAME,
2, ENAME,
3, ENAME,
'Rest'
)
ORDER BY 2;
DECODE(RN,
SUM(SAL)
---------- ---------FORD
3000
SCOTT
3000
KING
5000
Rest
18025
SQL> cl scr
SQL> SELECT
2
NumRow,
3
Deptno,
4
Sal,
5
MAX(Total)
6
OVER() Rest
7
FROM (
8
SELECT
9
NumRow,
10
Deptno,
11
Sal,
12
SUM(Sal)
13
OVER (ORDER BY NumRow
14
RANGE BETWEEN 3 FOLLOWING AND
15
UNBOUNDED FOLLOWING) Total
16
FROM
17
(SELECT
18
Empno,
19
Deptno,
20
Sal,
21
SUM(Sal) OVER (ORDER BY Empno) Cumulative,
22
DENSE_RANK() OVER (ORDER BY Sal DESC) NumRow
23
FROM Emp) B)
24 WHERE NumRow <= 3;
NUMROW
DEPTNO
SAL
REST
---------- ---------- ---------- ---------1
10
5000
15050
2
20
3000
15050
2
20
3000
15050
3
20
2975
15050
SQL> cl scr
SQL> SELECT Ename, Job, Comm
2 FROM Emp
3 WHERE Job = 'CLERK';
ENAME
---------JAMES
SMITH
ADAMS
MILLER
JOB
COMM
--------- ---------CLERK
CLERK
CLERK
CLERK
SQL>
2
3
4
UPDATE Emp
SET
Comm = NULL
WHERE Job = 'CLERK';
4 rows updated.
SQL> ED
Wrote file afiedt.buf
1
2
3*
4
UPDATE Emp
SET
Sal = NULL
/
14 rows updated.
SQL> SELECT Ename, Sal FROM Emp;
ENAME
SAL
---------- ---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
SAL
---------- ---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT Ename, Sal FROM Emp;
ENAME
SAL
---------- ---------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
FORD
SMITH
1250
3000
800
ENAME
SAL
---------- ---------SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT Ename, Job, Sal, Deptno
2 FROM Emp
3 WHERE Ename = 'ALLEN';
ENAME
JOB
SAL
DEPTNO
---------- --------- ---------- ---------ALLEN
SALESMAN
1600
30
SQL> UPDATE Emp
2 SET
3
Job = 'MANAGER',
4
Sal = 2500,
5
Deptno = 10
6 WHERE Ename = 'ALLEN';
1 row updated.
SQL> SELECT Ename, Job, Sal, Deptno
2 FROM Emp
3 WHERE Ename = 'ALLEN';
ENAME
JOB
SAL
DEPTNO
---------- --------- ---------- ---------ALLEN
MANAGER
2500
10
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT Ename, Job, Sal, Deptno
2 FROM Emp
3 WHERE Ename = 'BLAKE';
ENAME
JOB
SAL
DEPTNO
---------- --------- ---------- ---------BLAKE
MANAGER
2850
30
SQL> UPDATE Emp
2 SET
3
4
5
Job = 'ANALYST',
Sal = Sal + 1000
WHERE Ename = 'BLAKE';
1 row updated.
SQL> SELECT Ename, Job, Sal, Deptno
2 FROM Emp
3 WHERE Ename = 'BLAKE';
ENAME
JOB
SAL
DEPTNO
---------- --------- ---------- ---------BLAKE
ANALYST
3850
30
SQL> ED
Wrote file afiedt.buf
1 SELECT Ename, Job, Sal, Deptno
2 FROM Emp
3* WHERE Ename = 'BLAKE'
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
UPDATE Emp
SET
Job = 'ANALYST',
Sal = 1000 + Sal
WHERE Ename = 'BLAKE'
/
1 row updated.
SQL> SELECT Ename, Job, Sal, Deptno
2 FROM Emp
3 WHERE Ename = 'BLAKE';
ENAME
JOB
SAL
DEPTNO
---------- --------- ---------- ---------BLAKE
ANALYST
4850
30
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9*
SQL>
UPDATE Emp
SET
Job = 'ANALYST',
Sal = 1000 + (
SELECT Sal
FROM Emp
WHERE Ename = 'BLAKE'
)
WHERE Ename = 'BLAKE'
/
1 row updated.
SQL> ED
UPDATE Emp
SET
Job = 'ANALYST',
Sal = (
SELECT Sal
FROM Emp
WHERE Ename = 'BLAKE'
) + 1000
WHERE Ename = 'BLAKE'
/
) + 1000
*
ERROR at line 8:
ORA-00933: SQL command not properly ended
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
SQL>
UPDATE Emp
SET
Job = 'ANALYST',
Sal = (
(
SELECT Sal
FROM Emp
WHERE Ename = 'BLAKE') + 1000
)
WHERE Ename = 'BLAKE'
/
WHERE Ename = 'BLAKE') + 1000
*
ERROR at line 8:
ORA-00907: missing right parenthesis
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
UPDATE Emp
SET
Job = 'ANALYST',
Sal = Sal + 1000
WHERE Ename = 'BLAKE'
cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT Ename, Job, Sal
2 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
SAL
--------- ---------PRESIDENT
5000
MANAGER
2850
MANAGER
2450
MANAGER
2975
SALESMAN
1250
SALESMAN
1600
SALESMAN
1500
CLERK
950
SALESMAN
1250
ANALYST
3000
CLERK
800
ENAME
---------SCOTT
ADAMS
MILLER
JOB
SAL
--------- ---------ANALYST
3000
CLERK
1100
CLERK
1300
14 rows selected.
SQL> UPDATE Emp
2 SET
3
Job = 'ANALYST',
4
Sal = 1000 + (
5
SELECT Sal
6
FROM Emp
7
WHERE Ename = 'JONES'
8
)
9 WHERE Ename = 'BLAKE';
1 row updated.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13*
SQL>
UPDATE Emp
SET
Job = (
SELECT Job
FROM Emp
WHERE Ename = 'SMITH'
),
Sal = 1000 + (
SELECT Sal
FROM Emp
WHERE Ename = 'JONES'
)
WHERE Ename = 'BLAKE'
/
1 row updated.
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> UPDATE Emp
2 SET Sal = Sal * 1.10
3 WHERE Deptno = (SELECT Deptno
4
FROM Dept
5
WHERE Loc = 'CHICAGO');
6 rows updated.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT Empno, Ename, Deptno, Job
2 FROM Emp
3 WHERE Empno = 7788;
EMPNO ENAME
DEPTNO JOB
---------- ---------- ---------- --------7788 SCOTT
20 ANALYST
SQL> UPDATE Emp
2 SET
3
Deptno = (SELECT Deptno
4
FROM Emp
5
WHERE Empno = 7788)
6 WHERE
7
Job = (SELECT Job
8
FROM Emp
9
WHERE Empno = 7788);
2 rows updated.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
UPDATE Emp
SET
(Job, Deptno) = (SELECT Job, Deptno
FROM Emp
WHERE Empno = 7499)
WHERE Empno = 7698;
1 row updated.
SQL> ED
Wrote file afiedt.buf
1
2
UPDATE Emp
SET
3
4
5
6
7
8
9*
SQL>
1 row updated.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> UPDATE Emp E1
2 SET Deptno = (SELECT Deptno
3
FROM Dept
4
WHERE Loc = 'DALLAS'),
5
(Sal, Comm) = (SELECT 1.1 * AVG (Sal),
6
1.5 * AVG ( Comm )
7
FROM Emp E2
8
WHERE E1.Deptno = E2.Deptno)
9 WHERE Deptno IN (SELECT Deptno
10
FROM Dept
11
WHERE Loc = 'NEW YORK' OR
12
Loc = 'BOSTON');
3 rows updated.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT Ename, Sal, Deptno
2 FROM Emp
3 WHERE Deptno = 20;
ENAME
SAL
DEPTNO
---------- ---------- ---------JONES
2975
20
FORD
3000
20
SMITH
800
20
SCOTT
3000
20
ADAMS
1100
20
SQL> UPDATE Emp
2 SET Sal = Sal + 1000
3 WHERE Deptno = 20;
5 rows updated.
SQL> SELECT Ename, Sal, Deptno
2 FROM Emp
3 WHERE Deptno = 20;
ENAME
SAL
DEPTNO
---------- ---------- ---------JONES
3975
20
FORD
4000
20
SMITH
1800
20
SCOTT
4000
20
ADAMS
2100
20
SQL>
2
3
4
DEPTNO
SUM(SAL)
---------- ---------20
15875
SQL> ROLLBACK;
Rollback complete.
SQL>
SQL>
2
3
4
5 rows updated.
SQL> PRINT Dept20SalSum;
DEPT20SALSUM
-----------15875
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT Ename, Sal, Deptno
2 FROM Emp
3 WHERE Deptno = 20;
ENAME
SAL
DEPTNO
---------- ---------- ---------JONES
2975
20
FORD
3000
20
SMITH
800
20
SCOTT
3000
20
ADAMS
1100
20
SQL> cl scr
SQL> CREATE TABLE MyBonus
2 (
3
Empno NUMBER,
4
Bonus NUMBER DEFAULT 100
5
);
CREATE TABLE MyBonus
*
ERROR at line 1:
ORA-00955: name is already used by an existing object
EMPNO
SAL
DEPTNO
---------- ---------- ---------7698
2850
30
7654
1250
30
7499
1600
30
7844
1500
30
7900
950
30
7521
1250
30
6 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
6 rows merged.
SQL> SELECT * FROM MyBonus;
EMPNO
BONUS
---------- ---------7654
225
7499
260
7844
250
7521
225
7698
285
7900
95
6 rows selected.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1234, 'SAMPLE01', 30, 3750);
1 row created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1235, 'SAMPLE02', 30, 4050);
1 row created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1236, 'SAMPLE03', 30, 3550);
1 row created.
UPDATE Emp
SET
Sal = Sal + 2000
WHERE Empno = 7698;
1 row updated.
SQL>
2
3
4
UPDATE Emp
SET
Sal = Sal + 2700
WHERE Empno = 7499;
1 row updated.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
8 rows merged.
SQL> SELECT * FROM MyBonus;
EMPNO
BONUS
---------- ---------7654
350
7844
400
7521
350
7900
190
1236
355
1234
375
6 rows selected.
SQL> cl scr
SQL> DELETE FROM Emp;
18 rows deleted.
MANAGER
7839 01-MAY-81
2850
7782 CLARK
10
MANAGER
7839 09-JUN-81
2450
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7566 JONES
MANAGER
7839 02-APR-81
2975
20
7654 MARTIN
30
SALESMAN
7698 28-SEP-81
1250
1400
7499 ALLEN
30
SALESMAN
7698 20-FEB-81
1600
300
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7844 TURNER
SALESMAN
7698 08-SEP-81
1500
0
30
7900 JAMES
30
CLERK
7698 03-DEC-81
950
7521 WARD
30
SALESMAN
7698 22-FEB-81
1250
500
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7902 FORD
ANALYST
7566 03-DEC-81
3000
20
7369 SMITH
20
CLERK
7902 17-DEC-80
800
7788 SCOTT
20
ANALYST
7566 09-DEC-82
3000
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ---------- --------- ---------- --------- ---------- ---------DEPTNO
---------7876 ADAMS
CLERK
7788 12-JAN-83
1100
20
7934 MILLER
10
CLERK
7782 23-JAN-82
1300
14 rows selected.
SQL> cl scr
SQL> DELETE Emp;
14 rows deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> DELETE FROM Emp
2 WHERE Deptno = 30;
6 rows deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> DELETE FROM Emp
2 WHERE Deptno = (
3
SELECT Deptno
4
FROM Dept
5
WHERE Dname = 'SALES'
6
);
6 rows deleted.
SQL> DELETE FROM Emp
2 WHERE Deptno = 10;
DELETE FROM Emp
*
ERROR at line 1:
ORA-02292: integrity constraint (SCOTT.EMP_SELF_KEY) violated - child record
found
1 row merged.
SQL> SELECT * FROM ExamTimeTable;
EXAMNAME
EXAMTIME
------------------------------ -----------PHYSICAL SCIENCES
10:30 AM
SQL>
2
3
4
5
6
7
8
9
10
1 row merged.
EXAMTIME
-----------10:30 AM
12:30 PM
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DEPTNO
---------10
20
30
40
50
60
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
CARGO
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
6 rows selected.
SQL> DELETE FROM Dept
2 WHERE Deptno = 60;
1 row deleted.
SQL> DELETE FROM Emp
2 WHERE Ename = 'SMITH';
1 row deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
SQL>
SQL>
SQL>
SQL>
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
COLUMN
COLUMN
COLUMN
SELECT
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL
COMM DEPTNO
--------- ----- --------- ---------- ---------- -----PRESIDENT
17-NOV-81
5000
10
MANAGER
7839 01-MAY-81
2850
30
MANAGER
7839 09-JUN-81
2450
10
MANAGER
7839 02-APR-81
2975
20
SALESMAN
7698 28-SEP-81
1250
1400
30
SALESMAN
7698 20-FEB-81
1600
300
30
SALESMAN
7698 08-SEP-81
1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81
1250
500
30
ANALYST
7566 03-DEC-81
3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM DEPTNO
----- ---------- --------- ----- --------- ---------- ---------- ------
7788 SCOTT
7876 ADAMS
7934 MILLER
ANALYST
CLERK
CLERK
7566 09-DEC-82
7788 12-JAN-83
7782 23-JAN-82
14 rows selected.
SQL> cl scr
SQL>
USER
SQL>
2
SHOW USER
is "SCOTT"
GRANT SELECT, INSERT, UPDATE, DELETE
ON Dept TO SampTR;
Grant succeeded.
SQL> SELECT * FROM Dept;
DEPTNO
-----10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
SQL> /
DEPTNO
-----10
20
30
40
50
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
3000
1100
1300
20
20
10
50 SHIPPING
CHENNAI
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
CARGO
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
MUMBAI
CHENNAI
6 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM Dept;
DEPTNO
-----10
20
30
40
60
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
CARGO
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
MUMBAI
SQL> cl scr
SQL> COMMIT;
Commit complete.
SQL> cl scr
SQL> SELECT * FROm Dept;
DEPTNO
-----10
20
30
40
60
50
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
CARGO
SHIPPING
6 rows selected.
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
MUMBAI
CHENNAI
3
SampID NUMBER(2)
4* CONSTRAINT SampleALT_SampID_PK PRIMARY KEY
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5*
SQL>
Table created.
SQL>
2
3
4
5
6
7
Table altered.
SQL> cl scr
SQL> DROP TABLE SampleALT;
Table dropped.
SQL> SELECT * FROm TAB;
TNAME
-----------------------------EMP_SUM
MYSUBTOT
MYBONUS
MYMASTERDF
DEPT10
INSERTDEPT
EDEPT30
EXAMTIMETABLE
BIN$VxL2g13AQcO02YkDCYGTyw==$0
SAMPF
DEPT
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
VIEW
VIEW
TABLE
TABLE
TABLE
TABLE
TNAME
-----------------------------EMP
BONUS
SALGRADE
DUMMY
CUSTOMER
ORD
ITEM
PRODUCT
PRICE
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
SALES
VIEW
21 rows selected.
SQL> PURGE RECYCLEBIN;
Recyclebin purged.
SQL> SELECT * FROm TAB;
TNAME
-----------------------------EMP_SUM
MYSUBTOT
MYBONUS
MYMASTERDF
DEPT10
INSERTDEPT
EDEPT30
EXAMTIMETABLE
SAMPF
DEPT
EMP
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
VIEW
VIEW
TABLE
TABLE
TABLE
TABLE
TNAME
-----------------------------BONUS
SALGRADE
DUMMY
CUSTOMER
ORD
ITEM
PRODUCT
PRICE
SALES
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
TABLE
VIEW
20 rows selected.
SQL> cl scr
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM DEPTNO
--------- ----- --------- ---------- ---------- -----PRESIDENT
17-NOV-81
5000
10
MANAGER
7839 01-MAY-81
2850
30
MANAGER
7839 09-JUN-81
2450
10
MANAGER
7839 02-APR-81
2975
20
SALESMAN
7698 28-SEP-81
1250
1400
30
SALESMAN
7698 20-FEB-81
1600
300
30
SALESMAN
7698 08-SEP-81
1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81
1250
500
30
ANALYST
7566 03-DEC-81
3000
20
CLERK
7902 17-DEC-80
800
20
JOB
MGR HIREDATE
SAL
COMM DEPTNO
----7788
7876
7934
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> DELETE FROM Emp;
14 rows deleted.
SQL> SELECT * FROM Emp;
no rows selected
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL
COMM DEPTNO
--------- ----- --------- ---------- ---------- -----PRESIDENT
17-NOV-81
5000
10
MANAGER
7839 01-MAY-81
2850
30
MANAGER
7839 09-JUN-81
2450
10
MANAGER
7839 02-APR-81
2975
20
SALESMAN
7698 28-SEP-81
1250
1400
30
SALESMAN
7698 20-FEB-81
1600
300
30
SALESMAN
7698 08-SEP-81
1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81
1250
500
30
ANALYST
7566 03-DEC-81
3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL
COMM DEPTNO
--------- ----- --------- ---------- ---------- -----ANALYST
7566 09-DEC-82
3000
20
CLERK
7788 12-JAN-83
1100
20
CLERK
7782 23-JAN-82
1300
10
14 rows selected.
SQL> TRUNCATE TABLE Emp;
Table truncated.
SQL> SELECT * FROM Emp;
no rows selected
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM Emp;
no rows selected
SQL> cl scr
SQL> cl scr
SQL> DESC Emp
Name
----------------------------------------EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
DEPTNO
Null?
Type
-------- ---------------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
DeptID,
DeptName,
Place
)
Table created.
SQL> DESC SampDept1
Name
Null? Type
----------------------------------------- -------- ---------------------------DEPTID
NOT NULL NUMBER(2)
DEPTNAME
VARCHAR2(14)
PLACE
VARCHAR2(13)
SQL> SELECT * FROM SampDept1;
DEPTID DEPTNAME
PLACE
---------- -------------- ------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10
20
30
40
ACCOUNTING
NEW YORK
RESEARCH
DALLAS
SALES
CHICAGO
OPERATIONS
BOSTON
15 (
16 PARTITION SampIDPart1
17 VALUES LESS THAN (500),
18 PARTITION SampIDPart2
19 VALUES LESS THAN (1000),
20 PARTITION SampIDPart3
21 VALUES LESS THAN (2000),
22 PARTITION SampIDPart4
23 VALUES LESS THAN (3000),
24 PARTITION SampIDPart5
25 VALUES LESS THAN (4000),
26 PARTITION SampIDPart6
27 VALUES LESS THAN (MAXVALUE)
28 );
Table created.
SQL> cl scr
CREATE TABLE EmpTableHash
(
EmpNo NUMBER(6)
CONSTRAINT EmpNOPK PRIMARY KEY,
EName VARCHAR2(20)
DEFAULT 'NOT PROVIDED'
CONSTRAINT ENameNN NOT NULL
CONSTRAINT ENameCHK CHECK(EName = UPPER(EName)),
Job VARCHAR2(30)
DEFAULT 'NOT MENTIONED'
CONSTRAINT SampdateNN NOT NULL
CONSTRAINT JobCHKUpper CHECK(Job = UPPER(Job))
CONSTRAINT JobCHKList CHECK
(
Job IN
(
'PRESIDENT',
'ANALYST',
'MANAGER',
'SALESMAN',
'CLERK'
)
),
DeptNo NUMBER(2)
CONSTRAINT DeptnoCHKRange
CHECK(DeptNo BETWEEN 10 AND 99)
CONSTRAINT DeptnoCHKList
CHECK(DeptNo IN(10, 20, 30, 40, 50, 60, 70, 80, 90)),
MGRID NUMBER(6)
CONSTRAINT MGRIDFKSelf
REFERENCES EmpTableHash(EmpNo)
ON DELETE SET NULL,
HireDate DATE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DEFAULT SYSDATE
CONSTRAINT HireDateNN NOT NULL,
Sal NUMBER(8,2)
DEFAULT 10000
CONSTRAINT SalNN NOT NULL
CONSTRAINT SalChkRange CHECK(Sal BETWEEN 10000 AND 150000),
Comm NUMBER(7,2)
DEFAULT NULL
CONSTRAINT CommNN NOT NULL
CONSTRAINT CommChkRange CHECK(Comm BETWEEN 0 AND 25000),
CONSTRAINT DeptNOFKHASH
FOREIGN KEY(DeptNo)
REFERENCES Dept(Deptno)
ON DELETE CASCADE,
CONSTRAINT TotalSalaryCHK
CHECK(Sal + Comm <= 175000)
)
PARTITION BY HASH(DeptNO)
PARTITIONS 9
CREATE TABLE EmpSampleList1
(
EmpNo NUMBER(6)
CONSTRAINT EmpNOPK1 PRIMARY KEY,
EName VARCHAR2(20)
DEFAULT 'NOT PROVIDED'
CONSTRAINT ENameNN1 NOT NULL
CONSTRAINT ENameCHK1
CHECK(EName = UPPER(EName)),
Job VARCHAR2(30)
DEFAULT 'NOT MENTIONED'
CONSTRAINT SampdateNN1 NOT NULL
CONSTRAINT JobCHKUpper1
CHECK(Job = UPPER(Job))
CONSTRAINT JobCHKList1 CHECK
CONSTRAINT JobCHKList CHECK
(
Job IN
(
'PRESIDENT',
'ANALYST',
'MANAGER',
'SALESMAN',
'CLERK'
)
),
DeptNo NUMBER(2)
CONSTRAINT DeptnoCHKRange1
CHECK(DeptNo BETWEEN 10 AND 99)
CONSTRAINT DeptnoCHKList1
CHECK(DeptNo IN(10,20,30,40,50,60,70,80,90)),
MGRID NUMBER(6)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
CONSTRAINT MGRIDFKSelf1
REFERENCES EmpSampleList(EmpNo)
ON DELETE SET NULL,
HireDate DATE
DEFAULT SYSDATE
CONSTRAINT HireDateNN1 NOT NULL,
Sal NUMBER(8,2)
DEFAULT 10000
CONSTRAINT SalNN1 NOT NULL
CONSTRAINT SalChkRange1
CHECK(Sal BETWEEN 10000 AND 150000),
Comm NUMBER(7,2)
DEFAULT NULL
CONSTRAINT CommNN1 NOT NULL
CONSTRAINT CommChkRange1
CHECK(Comm BETWEEN 0 AND 25000),
CONSTRAINT DeptNOFKHASH1
FOREIGN KEY(DeptNo)
REFERENCES Dept(Deptno)
ON DELETE CASCADE,
CONSTRAINT TotalSalaryCHK1
CHECK(Sal + Comm <= 175000)
)
PARTITION BY LIST(Job)
(
PARTITION JPresident
VALUES('PRESIDENT'),
PARTITION JAnalyst
VALUES('ANALYST'),
PARTITION JManager
VALUES('MANAGER'),
PARTITION JSalesman
VALUES('SALESMAN'),
PARTITION JClerk
VALUES('CLERK')
);
CREATE TABLE EmpSampleList
(
EmpNo NUMBER(6)
CONSTRAINT EmpNOPK PRIMARY KEY,
EName VARCHAR2(20)
DEFAULT 'NOT PROVIDED'
CONSTRAINT ENameNN NOT NULL
CONSTRAINT ENameCHK
CHECK(EName = UPPER(EName)),
Job VARCHAR2(30)
DEFAULT 'NOT MENTIONED'
CONSTRAINT SampdateNN NOT NULL
CONSTRAINT JobCHKUpper
CHECK(Job = UPPER(Job))
CONSTRAINT JobCHKList CHECK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
)
);
CREATE TABLE EmpSampleSubPart
(
EmpNo NUMBER(6)
CONSTRAINT EmpNOPK2 PRIMARY KEY,
EName VARCHAR2(20)
DEFAULT 'NOT PROVIDED'
CONSTRAINT ENameNN2 NOT NULL
CONSTRAINT ENameCHK2
CHECK(EName = UPPER(EName)),
Job VARCHAR2(30)
DEFAULT 'NOT MENTIONED'
CONSTRAINT SampdateNN2 NOT NULL
CONSTRAINT JobCHKUpper2
CHECK(Job = UPPER(Job))
CONSTRAINT JobCHKList2
CONSTRAINT JobCHKList CHECK
(
Job IN
(
'PRESIDENT',
'ANALYST',
'MANAGER',
'SALESMAN',
'CLERK'
)
),
DeptNo NUMBER(2) CONSTRAINT
DeptnoCHKRange2 CHECK(DeptNo BETWEEN 10 AND 99)
CONSTRAINT DeptnoCHKList2
CHECK(DeptNo IN(10,20,30,40,50,60,70,80,90)),
MGRID NUMBER(6)
CONSTRAINT MGRIDFKSelf2
REFERENCES EmpSampleSubPart(EmpNo)
ON DELETE SET NULL,
HireDate DATE
DEFAULT SYSDATE
CONSTRAINT HireDateNN2 NOT NULL,
Sal NUMBER(8, 2)
DEFAULT 10000
CONSTRAINT SalNN2 NOT NULL
CONSTRAINT SalChkRange2
CHECK(Sal BETWEEN 10000 AND 150000),
Comm NUMBER(7, 2)
DEFAULT NULL
CONSTRAINT CommNN2 NOT NULL
CONSTRAINT CommChkRange2
CHECK(Comm BETWEEN 0 AND 25000),
CONSTRAINT DeptNOFKSubPart2
FOREIGN KEY(DeptNo)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
REFERENCES Dept(Deptno)
ON DELETE CASCADE,
CONSTRAINT TotalSalaryCHK2
CHECK(Sal + Comm <= 175000)
)
PARTITION BY RANGE(Ename)
SUBPARTITION BY HASH(Job)
SUBPARTITIONS 5
(
PARTITION NameP1
VALUES LESS THAN('G'),
PARTITION NAMEP2
VALUES LESS THAN('N'),
PARTITION NAMEP3
VALUES LESS THAN('T'),
PARTITION NAMEP4
VALUES LESS THAN(MAXVALUE)
)
/
ALTER TABLE SampleTablePart
SPLIT PARTITION SampIDPart6
AT(5000)
INTO(
PARTITION SampIDPart6,
PARTITION SampIDPart7
)
/
ALTER TABLE EmpSampleList
SPLIT PARTITION JPartList2
VALUES(
'MANAGER',
'SALESMAN'
)
INTO(
PARTITION MANAGER,
PARTITION SALESMAN
)
/
ALTER TABLE EmpSampleList
MERGE
PARTITIONS
MANAGER,
SALESMAN
INTO
PARTITION
JPARTLIST2
/
ALTER TABLE SampleTablePart
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MERGE
PARTITIONS
SampIDPart6,
SampIDPart7
INTO
PARTITION
SampIDPart7
/
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
Type created.
SQL> DESC USER_OBJECTS
Name
Null?
----------------------------------------- -------OBJECT_NAME
SUBOBJECT_NAME
OBJECT_ID
DATA_OBJECT_ID
OBJECT_TYPE
CREATED
LAST_DDL_TIME
TIMESTAMP
STATUS
TEMPORARY
GENERATED
SECONDARY
SQL>
SQL>
SQL>
SQL>
2
Type
---------------------------VARCHAR2(128)
VARCHAR2(30)
NUMBER
NUMBER
VARCHAR2(19)
DATE
DATE
VARCHAR2(19)
VARCHAR2(7)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(1)
Name
----------------------------------------TYPE_NAME
TYPE_OID
TYPECODE
ATTRIBUTES
METHODS
PREDEFINED
INCOMPLETE
FINAL
INSTANTIABLE
SUPERTYPE_OWNER
SUPERTYPE_NAME
LOCAL_ATTRIBUTES
LOCAL_METHODS
TYPEID
Null?
-------NOT NULL
NOT NULL
Type
---------------------------VARCHAR2(30)
RAW(16)
VARCHAR2(30)
NUMBER
NUMBER
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(3)
VARCHAR2(30)
VARCHAR2(30)
NUMBER
NUMBER
RAW(16)
SQL> ED
Wrote file afiedt.buf
1 SELECT TYPE_NAME, ATTRIBUTES, TYPE_OID
2* FROM USER_TYPES
SQL> ED
Wrote file afiedt.buf
1 SELECT TYPE_NAME, ATTRIBUTES, TYPE_OID
2* FROM USER_TYPES
SQL> /
TYPE_NAME ATTRIBUTES TYPE_OID
---------- ---------- --------------STUDENT
5 1E74881F216B4EF
E95ECA63DD27F72
E7
SQL> cl scr
SQL> DESC Student
Name
Null?
Type
----------------------------------------- -------- ---------------------------STUDID
NUMBER(6)
SNAME
VARCHAR2(20)
DOB
DATE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DOA
FEES
DATE
NUMBER(7,2)
SQL> cl scr
SQL> CREATE TABLE McaStudent
2 OF Student;
Table created.
SQL> DESC Student
Name
Null?
----------------------------------------- -------STUDID
SNAME
DOB
DOA
FEES
Type
---------------------------NUMBER(6)
VARCHAR2(20)
DATE
DATE
NUMBER(7,2)
Type
---------------------------NUMBER(6)
VARCHAR2(20)
DATE
DATE
NUMBER(7,2)
1 row created.
SQL> COLUMN SName FORMAT A12
SQL> COLUMN StudID FORMAT 9999
SQL> cl scr
SQL> SELECT * FROM MCAStudent;
STUDID
-----1234
1235
1236
SNAME
-----------KUMAR
KRISHNA
SATISH
DOB
DOA
FEES
--------- --------- ---------07-OCT-98 29-JUL-10
15000
05-SEP-99 29-JUL-10
1300
SNAME
-----------KUMAR
KRISHNA
SATISH
McaStudent;
2 rows deleted.
SQL> SELECT StudID, Sname
2 FROM McaStudent;
no rows selected
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
Type created.
SQL>
2
3
4
5
6
7
8
9
Type created.
SQL>
2
3
4
5
6
7
8
9
10
Type created.
SQL> CREATE OR REPLACE TYPE Fees
2 AS
3 OBJECT
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
6
7
8
9
10
11
12
13
14
(
TutionFees
,LabFees
,SportsFees
,LibraryFees
,ExamFees
,TransportFees
,HostelFees
,MessFees
);
/
NUMBER(8, 2)
NUMBER(6, 2)
NUMBER(6, 2)
NUMBER(6, 2)
NUMBER(6, 2)
NUMBER(7, 2)
NUMBER(8, 2)
NUMBER(8, 2)
Type created.
SQL>
2
3
4
5
6
7
8
Type created.
SQL> CREATE TABLE MCAStudent
2 OF
3 StudentColl;
CREATE TABLE MCAStudent
*
ERROR at line 1:
ORA-00955: name is already used by an existing object
Type
---------------------------PERSON
FEES
STUDENT
STUDENTFEES
PERSON
FEES
Type
---------------------------PERSON
NUMBER(6)
NAME
DATE
ADDRESS
FEES
NUMBER(8,2)
NUMBER(6,2)
NUMBER(6,2)
NUMBER(6,2)
NUMBER(6,2)
NUMBER(7,2)
NUMBER(8,2)
NUMBER(8,2)
Type
---------------------------PERSON
NUMBER(6)
NAME
VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(20)
DATE
ADDRESS
VARCHAR2(15)
VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(20)
CHAR(6)
FEES
NUMBER(8,2)
NUMBER(6,2)
NUMBER(6,2)
NUMBER(6,2)
NUMBER(6,2)
NUMBER(7,2)
NUMBER(8,2)
NUMBER(8,2)
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
)
VALUES
(
PERSON(1234, NAME
(
'SATISH', 'KUMAR', 'YELLANKI'
)
,'02-OCT-86'
,ADDRESS
(
'2-715/B/6'
,'BALKAMPET ROAD'
,'HYDERABAD'
,'RANGA REDDY'
,'ANDHRA PRADESH'
,'INDIA'
,'500016'
)
)
,FEES
(
100000
,6000
,2000
,1500
,5000
,20000
,12000
,27000
)
);
1 row created.
SQL> INSERT INTO
2 MCAStudent
3 (
4
Student
5
,StudentFees
6
)
7
VALUES
8
(
9
PERSON(1235, NAME
10
(
11
'RAVI', 'KUMAR', 'SHARMA'
12
)
13
,'03-JAN-86'
14
,ADDRESS
15
(
16
'2-716/B/6'
17
,'SHIVAM ROAD'
18
,'HYDERABAD'
19
,'RANGA REDDY'
20
,'ANDHRA PRADESH'
21
,'INDIA'
22
,'500016'
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
23
24
25
26
27
28
29
30
31
32
33
34
35
36
)
)
,FEES
(
100000
,6000
,2000
,1500
,5000
,20000
,12000
,27000
)
);
1 row created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
INSERT INTO
MCAStudent
(
Student
,StudentFees
)
VALUES
(
PERSON(1236, NAME
(
'RAMANA', 'KUMAR', 'RANJAN'
)
,'23-JUN-86'
,ADDRESS
(
'2-716/B/6'
,'GANDHI ROAD'
,'HYDERABAD'
,'RANGA REDDY'
,'ANDHRA PRADESH'
,'INDIA'
,'500016'
)
)
,FEES
(
100000
,6000
,2000
,1500
,5000
,20000
,12000
,27000
)
);
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT * FROM MCAStudent;
STUDENT(PERSONID, PERSONFULLNAME(FIRSTNAME, MIDDLENAME, LASTNAME), PERSONDOB, PE
-------------------------------------------------------------------------------STUDENTFEES(TUTIONFEES, LABFEES, SPORTSFEES, LIBRARYFEES, EXAMFEES, TRANSPORTFEE
-------------------------------------------------------------------------------PERSON(1234, NAME('SATISH', 'KUMAR', 'YELLANKI'), '02-OCT-86', ADDRESS('2-715/B/
6', 'BALKAMPET ROAD', 'HYDERABAD', 'RANGA REDDY', 'ANDHRA PRADESH', 'INDIA', '50
0016'))
FEES(100000, 6000, 2000, 1500, 5000, 20000, 12000, 27000)
PERSON(1235, NAME('RAVI', 'KUMAR', 'SHARMA'), '03-JAN-86', ADDRESS('2-716/B/6',
'SHIVAM ROAD', 'HYDERABAD', 'RANGA REDDY', 'ANDHRA PRADESH', 'INDIA', '500016'))
FEES(100000, 6000, 2000, 1500, 5000, 20000, 12000, 27000)
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
4
5
6
7
8
FNAME
---------SATISH
RAVI
RAMANA
SQL>
2
3
4
5
6
7
8
9
MNAME
---------KUMAR
KUMAR
KUMAR
LNAME
---------YELLANKI
SHARMA
RANJAN
FULLNAME
-----------------------------SATISH KUMAR YELLANKI
RAVI KUMAR SHARMA
RAMANA KUMAR RANJAN
SELECT
E1.Student.PersonFullName.FirstName FName,
E1.Student.PersonFullName.MiddleName MName,
E1.Student.PersonFullName.LastName LName,
E1.Student.PersonFullName.FirstName||' '
||E1.Student.PersonFullName.MiddleName||' '
||E1.Student.PersonFullName.LastName FullName
FROM (
SELECT *
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10
11
FROM MCAStudent
) E1;
FNAME
---------SATISH
RAVI
RAMANA
SQL>
2
3
4
5
6
7
8
9
10
MNAME
---------KUMAR
KUMAR
KUMAR
LNAME
---------YELLANKI
SHARMA
RANJAN
FULLNAME
-----------------------------SATISH KUMAR YELLANKI
RAVI KUMAR SHARMA
RAMANA KUMAR RANJAN
View created.
SQL> DESC StudentName
Name
Null?
----------------------------------------- -------FNAME
MNAME
LNAME
FULLNAME
Type
---------------------------VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(62)
MNAME
---------KUMAR
KUMAR
KUMAR
LNAME
---------YELLANKI
SHARMA
RANJAN
FULLNAME
-----------------------------SATISH KUMAR YELLANKI
RAVI KUMAR SHARMA
RAMANA KUMAR RANJAN
SQL> ED
Wrote file afiedt.buf
1
2
3
4*
SQL>
1 row updated.
SQL> SELECT * FROM StudentName;
FNAME
---------SATISH
RAVI
RAGHAVA
SQL>
SQL>
2
3
4
5
6
7
MNAME
---------KUMAR
KUMAR
KUMAR
LNAME
---------YELLANKI
SHARMA
RANJAN
FULLNAME
-----------------------------SATISH KUMAR YELLANKI
RAVI KUMAR SHARMA
RAGHAVA KUMAR RANJAN
UPDATE (
SELECT *
FROM MCAStudent
) MCA
SET
MCA.Student.PersonFullName.FirstName = 'RAGHAVA'
WHERE MCA.Student.PersonID = 1236;
1 row updated.
SQL> DELETE MCAStudent MCA
2 WHERE MCA.Student.PersonID = 1236;
1 row deleted.
SQL> SELECT * FROM StudentName;
FNAME
---------SATISH
RAVI
MNAME
---------KUMAR
KUMAR
LNAME
---------YELLANKI
SHARMA
FULLNAME
-----------------------------SATISH KUMAR YELLANKI
RAVI KUMAR SHARMA
SQL> DELETE (
2
SELECT *
3
FROM MCAStudent
4
) MCA
5 WHERE MCA.Student.PersonID = 1236;
0 rows deleted.
SQL> SPOOL OFF
SQL> cl scr
SQL> COLUMN InchargeName FORMAT A19
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
COLUMN
COLUMN
COLUMN
SELECT
STUDID
-----1100
1101
1102
1103
1104
SQL>
2
3
4
5
Type
---------------------------NUMBER(6)
VARCHAR2(20)
DATE
DATE
NUMBER(7,2)
SNAME
---------KUMAR
SESHU
RAMANA
RAMU
SRIPATH
DOB
--------07-OCT-80
07-OCT-81
07-OCT-80
07-OCT-82
07-OCT-83
DOA
FEES
--------- -----30-JUL-10 15000
30-JUL-10 15000
30-JUL-10 15000
30-JUL-10 15000
30-JUL-10 15000
SELECT
'SUBRAMANYAM SHARMA' InchargeName,
REF(A) StudentIncharge
FROM McaStudent A
WHERE SName = 'SESHU';
INCHARGENAME
STUDENTINCHARGE
------------------- ------------------------SUBRAMANYAM SHARMA 0000280209FA2A77B669F548C
8A36B581FF12354371C2C7E2A
1E654C848A33AA9EBB45597B0
10000370004
Table created.
SQL> cl scr
SQL> SELECT * FROM Tab;
TNAME
-----------------------------MBASTUDENT
MASTUDENT
MCOMSTUDENT
MCASTUDENT
STUDENTINCHARGES
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
TABTYPE CLUSTERID
------- ---------TABLE
TABLE
TABLE
TABLE
TABLE
BEGIN
INSERT INTO McaStudent
VALUES(1100, 'KUMAR', '07-Oct-80', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1101, 'SESHU', '07-Oct-81', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1102, 'RAMANA', '07-Oct-80', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1103, 'RAMU', '07-Oct-82', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1104, 'SRIPATH', '07-Oct-83', SYSDATE, 15000);
INSERT INTO MBAStudent
VALUES(1200, 'SAMPATH', '10-DEC-85', SYSDATE, 25000);
INSERT INTO MBAStudent
VALUES(1201, 'SURESH', '10-DEC-80', SYSDATE, 25000);
INSERT INTO MBAStudent
VALUES(1202, 'RAJESH', '10-DEC-83', SYSDATE, 25000);
INSERT INTO MAStudent
VALUES(1300, 'BOBBY', '10-DEC-80', SYSDATE, 25000);
INSERT INTO MAStudent
VALUES(1301, 'SUNDER', '10-DEC-85', SYSDATE, 25000);
INSERT INTO MComStudent
VALUES(1400, 'RAMESH', '10-DEC-83', SYSDATE, 25000);
COMMIT;
END;
/
SNAME
DOB
DOA
FEES
---------- --------- --------- -----SESHU
07-OCT-81 02-AUG-10 15000
RAMANA
07-OCT-80 02-AUG-10 15000
RAMU
07-OCT-82 02-AUG-10 15000
KUMAR
07-OCT-80 30-JUL-10 15000
SESHU
07-OCT-81 30-JUL-10 15000
RAMANA
07-OCT-80 30-JUL-10 15000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1103
1104
1100
1104
RAMU
SRIPATH
KUMAR
SRIPATH
07-OCT-82
07-OCT-83
07-OCT-80
07-OCT-83
30-JUL-10
30-JUL-10
02-AUG-10
02-AUG-10
15000
15000
15000
15000
10 rows selected.
SQL> DELETE FROM MCASTUDENT;
10 rows deleted.
SQL> COMMIT;
Commit complete.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13*
SQL>
BEGIN
INSERT INTO McaStudent
VALUES(1100, 'KUMAR', '07-Oct-80', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1101, 'SESHU', '07-Oct-81', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1102, 'RAMANA', '07-Oct-80', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1103, 'RAMU', '07-Oct-82', SYSDATE, 15000);
INSERT INTO McaStudent
VALUES(1104, 'SRIPATH', '07-Oct-83', SYSDATE, 15000);
COMMIT;
END;
/
SNAME
---------KUMAR
SESHU
RAMANA
RAMU
SRIPATH
DOB
--------07-OCT-80
07-OCT-81
07-OCT-80
07-OCT-82
07-OCT-83
DOA
FEES
--------- -----02-AUG-10 15000
02-AUG-10 15000
02-AUG-10 15000
02-AUG-10 15000
02-AUG-10 15000
SNAME
DOB
DOA
FEES
---------- --------- --------- -----SAMPATH
10-DEC-85 02-AUG-10 25000
SURESH
10-DEC-80 02-AUG-10 25000
RAJESH
10-DEC-83 02-AUG-10 25000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SNAME
---------BOBBY
SUNDER
DOB
--------10-DEC-80
10-DEC-85
DOA
FEES
--------- -----02-AUG-10 25000
02-AUG-10 25000
BEGIN
INSERT INTO
StudentIncharges
SELECT
'SUBRAMANYAM SHARMA',
REF(A)
FROM McaStudent A
WHERE SName = 'SESHU';
INSERT INTO StudentIncharges
SELECT
'SUBRAMANYAM SHARMA',
REF(A)
FROM McaStudent A
WHERE SName = 'RAMANA';
INSERT INTO StudentIncharges
SELECT
'SUBRAMANYAM SHARMA',
REF(A)
FROM McaStudent A
WHERE SName = 'SRIPATH';
INSERT INTO StudentIncharges
SELECT
'NIRANJAN RAMORI',
REF(A)
FROM McaStudent A
WHERE SName = 'KUMAR';
INSERT INTO StudentIncharges
SELECT
'NIRANJAN RAMORI',
REF(A)
FROM McaStudent A
WHERE SName = 'RAMU';
END;
/
SQL> cl scr
SQL> SELECT *
2 FROM StudentIncharges
3 WHERE InchargeName = 'SUBRAMANYAM SHARMA';
INCHARGENAME
STUDENTINCHARGE
------------------- ------------------------SUBRAMANYAM SHARMA 0000220208ED66DAEA0E954BD
4929E25DCCA43FAEE1C2C7E2A
1E654C848A33AA9EBB45597B
SUBRAMANYAM SHARMA
0000220208F1A6DA06BC66440
49FC333A08475B9E81C2C7E2A
1E654C848A33AA9EBB45597B
SUBRAMANYAM SHARMA
0000220208F410869986DA415
DB48FED91BF3C92EF1C2C7E2A
1E654C848A33AA9EBB45597B
INCHARGENAME
STUDENTINCHARGE
------------------- -------------------------
SQL> ED
Wrote file afiedt.buf
1
2
3*
SQL>
SELECT *
FROM StudentIncharges
WHERE InchargeName = 'NIRANJAN RAMORI'
/
INCHARGENAME
STUDENTINCHARGE
------------------- ------------------------NIRANJAN RAMORI
0000220208B5154F3D38B1444
F811E7EDDA5C0D3D51C2C7E2A
1E654C848A33AA9EBB45597B
NIRANJAN RAMORI
SQL>
2
3
4
000022020858AE1BD83198452
C897A9119162C452A1C2C7E2A
1E654C848A33AA9EBB45597B
SELECT
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'SUBRAMANYAM SHARMA';
2
3
4
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'NIRANJAN RAMORI';
BEGIN
INSERT INTO StudentIncharges
SELECT
'SUBRAMANYAM SHARMA',
REF(A)
FROM MBAStudent A
WHERE SName = 'SAMPATH';
INSERT INTO StudentIncharges
SELECT
'SUBRAMANYAM SHARMA',
REF(A)
FROM MBAStudent A
WHERE SName = 'RAJESH';
INSERT INTO StudentIncharges
SELECT
'NIRANJAN RAMORI',
REF(A)
FROM MBAStudent A
WHERE SName = 'SURESH';
END;
/
0000220208F1A6DA06BC66440
49FC333A08475B9E81C2C7E2A
1E654C848A33AA9EBB45597B
SUBRAMANYAM SHARMA
0000220208F410869986DA415
DB48FED91BF3C92EF1C2C7E2A
1E654C848A33AA9EBB45597B
INCHARGENAME
STUDENTINCHARGE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
000022020836EC82D132E24E2
AAF045D0CCEB8EC71DC81AA66
119E46B6BC9B12173D9331B6
SUBRAMANYAM SHARMA
0000220208E8080A7CA76845A
38F8A5DF113D34A6FDC81AA66
119E46B6BC9B12173D9331B6
SQL>
2
3
4
SELECT
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'SUBRAMANYAM SHARMA';
SELECT
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'NIRANJAN RAMORI';
BEGIN
INSERT INTO StudentIncharges
SELECT
'NIRANJAN RAMORI',
REF(A)
FROM MAStudent A
WHERE SName = 'BOBBY';
INSERT INTO StudentIncharges
SELECT
'NIRANJAN RAMORI',
REF(A)
FROM MAStudent A
WHERE SName = 'SUNDER';
END;
/
SQL>
2
3
4
SELECT
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'SUBRAMANYAM SHARMA';
SELECT
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'NIRANJAN RAMORI';
BEGIN
INSERT INTO StudentIncharges
SELECT
'NIRANJAN RAMORI',
REF(A)
FROM MComStudent A
WHERE SName = 'RAMESH';
END;
/
SELECT
DEREF(X.StudentIncharge)
FROM StudentIncharges X
WHERE InchargeName = 'NIRANJAN RAMORI';
6 rows selected.
SQL> cl scr
SQL> SELECT
2 InchargeName, DEREF(X.StudentIncharge)
3 FROM StudentIncharges X;
INCHARGENAME
------------------DEREF(X.STUDENTINCHARGE)(STUDID, SNAME, DOB, DOA, FEES)
-------------------------------------------------------------------------------SUBRAMANYAM SHARMA
STUDENT(1101, 'SESHU', '07-OCT-81', '02-AUG-10', 15000)
SUBRAMANYAM SHARMA
STUDENT(1102, 'RAMANA', '07-OCT-80', '02-AUG-10', 15000)
SUBRAMANYAM SHARMA
STUDENT(1104, 'SRIPATH', '07-OCT-83', '02-AUG-10', 15000)
INCHARGENAME
------------------DEREF(X.STUDENTINCHARGE)(STUDID, SNAME, DOB, DOA, FEES)
-------------------------------------------------------------------------------NIRANJAN RAMORI
STUDENT(1100, 'KUMAR', '07-OCT-80', '02-AUG-10', 15000)
NIRANJAN RAMORI
STUDENT(1103, 'RAMU', '07-OCT-82', '02-AUG-10', 15000)
SUBRAMANYAM SHARMA
STUDENT(1200, 'SAMPATH', '10-DEC-85', '02-AUG-10', 25000)
INCHARGENAME
------------------DEREF(X.STUDENTINCHARGE)(STUDID, SNAME, DOB, DOA, FEES)
-------------------------------------------------------------------------------SUBRAMANYAM SHARMA
STUDENT(1202, 'RAJESH', '10-DEC-83', '02-AUG-10', 25000)
NIRANJAN RAMORI
STUDENT(1201, 'SURESH', '10-DEC-80', '02-AUG-10', 25000)
NIRANJAN RAMORI
STUDENT(1300, 'BOBBY', '10-DEC-80', '02-AUG-10', 25000)
INCHARGENAME
------------------DEREF(X.STUDENTINCHARGE)(STUDID, SNAME, DOB, DOA, FEES)
-------------------------------------------------------------------------------NIRANJAN RAMORI
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
11 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
SELECT
InchargeName Incharge,
E1.Stu.StudId StudID,
E1.Stu.SName Sname,
E1.Stu.DOB DOB,
E1.Stu.DOA DOA,
E1.Stu.Fees Fees
FROM (SELECT
InchargeName, DEREF(X.StudentIncharge) Stu
FROM StudentIncharges X
) E1;
INCHARGE
STUDID SNAME
DOB
DOA
FEES
------------------------------ ------ ---------- --------- --------- -----SUBRAMANYAM SHARMA
1101 SESHU
07-OCT-81 02-AUG-10 15000
SUBRAMANYAM SHARMA
1102 RAMANA
07-OCT-80 02-AUG-10 15000
SUBRAMANYAM SHARMA
1104 SRIPATH
07-OCT-83 02-AUG-10 15000
NIRANJAN RAMORI
1100 KUMAR
07-OCT-80 02-AUG-10 15000
NIRANJAN RAMORI
1103 RAMU
07-OCT-82 02-AUG-10 15000
SUBRAMANYAM SHARMA
1200 SAMPATH
10-DEC-85 02-AUG-10 25000
SUBRAMANYAM SHARMA
1202 RAJESH
10-DEC-83 02-AUG-10 25000
NIRANJAN RAMORI
1201 SURESH
10-DEC-80 02-AUG-10 25000
NIRANJAN RAMORI
1300 BOBBY
10-DEC-80 02-AUG-10 25000
NIRANJAN RAMORI
1301 SUNDER
10-DEC-85 02-AUG-10 25000
NIRANJAN RAMORI
1400 RAMESH
10-DEC-83 02-AUG-10 25000
11 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13*
SQL>
View created.
SQL> DESC StudentINCHData
Name
Null?
----------------------------------------- -------INCHARGE
STUDID
SNAME
DOB
DOA
FEES
Type
---------------------------VARCHAR2(30)
NUMBER(6)
VARCHAR2(20)
DATE
DATE
NUMBER(7,2)
0000220208F1A6DA06BC66440
49FC333A08475B9E81C2C7E2A
1E654C848A33AA9EBB45597B
SUBRAMANYAM SHARMA
0000220208F410869986DA415
DB48FED91BF3C92EF1C2C7E2A
1E654C848A33AA9EBB45597B
INCHARGENAME
STUDENTINCHARGE
------------------- ------------------------NIRANJAN RAMORI
0000220208B5154F3D38B1444
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
F811E7EDDA5C0D3D51C2C7E2A
1E654C848A33AA9EBB45597B
NIRANJAN RAMORI
000022020858AE1BD83198452
C897A9119162C452A1C2C7E2A
1E654C848A33AA9EBB45597B
SUBRAMANYAM SHARMA
000022020836EC82D132E24E2
AAF045D0CCEB8EC71DC81AA66
INCHARGENAME
STUDENTINCHARGE
------------------- ------------------------119E46B6BC9B12173D9331B6
SUBRAMANYAM SHARMA
0000220208E8080A7CA76845A
38F8A5DF113D34A6FDC81AA66
119E46B6BC9B12173D9331B6
NIRANJAN RAMORI
000022020860E1ACFB0B734AA
19995A4480B4873A0DC81AA66
119E46B6BC9B12173D9331B6
NIRANJAN RAMORI
0000220208F8348FCEE75A421
INCHARGENAME
STUDENTINCHARGE
------------------- ------------------------FB19191E90630BD8BF6131B14
BE6941D4886AF9685E255BC7
NIRANJAN RAMORI
000022020866E8E45C571A431
0A57D80114C8509E5F6131B14
BE6941D4886AF9685E255BC7
NIRANJAN RAMORI
00002202089904F2627FB64B0
781029CB8EE47DC3655A6BBB2
D4A3443ABC20A3BCDA8E5B39
11 rows selected.
SQL> SELECT * FROM StudentINCHData;
INCHARGE
STUDID SNAME
DOB
DOA
FEES
------------------------------ ------ ---------- --------- --------- -----SUBRAMANYAM SHARMA
SUBRAMANYAM SHARMA
1102 RAMANA
07-OCT-80 02-AUG-10 15000
SUBRAMANYAM SHARMA
1104 SRIPATH
07-OCT-83 02-AUG-10 15000
NIRANJAN RAMORI
1100 KUMAR
07-OCT-80 02-AUG-10 15000
NIRANJAN RAMORI
1103 RAMU
07-OCT-82 02-AUG-10 15000
SUBRAMANYAM SHARMA
1200 SAMPATH
10-DEC-85 02-AUG-10 25000
SUBRAMANYAM SHARMA
1202 RAJESH
10-DEC-83 02-AUG-10 25000
NIRANJAN RAMORI
1201 SURESH
10-DEC-80 02-AUG-10 25000
NIRANJAN RAMORI
1300 BOBBY
10-DEC-80 02-AUG-10 25000
NIRANJAN RAMORI
1301 SUNDER
10-DEC-85 02-AUG-10 25000
NIRANJAN RAMORI
1400 RAMESH
10-DEC-83 02-AUG-10 25000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
11 rows selected.
SQL> DELETE FROM StudentINCHData
2 WHERE Stuid IS NULL AND INCHARGE = 'SUBRAMANYAM SHARMA';
WHERE Stuid IS NULL AND INCHARGE = 'SUBRAMANYAM SHARMA'
*
ERROR at line 2:
ORA-00904: "STUID": invalid identifier
SQL> ED
Wrote file afiedt.buf
1 DELETE FROM (
2
SELECT
3
InchargeName,
4
DEREF(X.StudentIncharge) Stu
5
FROM StudentIncharges X
6
) E1
7 WHERE
8 E1.Stu.StudId StudID IS NULL AND
9* InchargeName = 'SUBRAMANYAM SHARMA'
SQL> /
E1.Stu.StudId StudID IS NULL AND
*
ERROR at line 8:
ORA-00920: invalid relational operator
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9*
SQL>
DELETE FROM (
SELECT
InchargeName,
DEREF(X.StudentIncharge) Stu
FROM StudentIncharges X
) E1
WHERE
E1.Stu.StudId IS NULL AND
InchargeName = 'SUBRAMANYAM SHARMA'
/
1 row deleted.
SQL> SELECT * FROM StudentINCHData;
INCHARGE
STUDID SNAME
DOB
DOA
FEES
------------------------------ ------ ---------- --------- --------- -----SUBRAMANYAM SHARMA
1102 RAMANA
07-OCT-80 02-AUG-10 15000
SUBRAMANYAM SHARMA
1104 SRIPATH
07-OCT-83 02-AUG-10 15000
NIRANJAN RAMORI
1100 KUMAR
07-OCT-80 02-AUG-10 15000
NIRANJAN RAMORI
1103 RAMU
07-OCT-82 02-AUG-10 15000
SUBRAMANYAM SHARMA
1200 SAMPATH
10-DEC-85 02-AUG-10 25000
SUBRAMANYAM SHARMA
1202 RAJESH
10-DEC-83 02-AUG-10 25000
NIRANJAN RAMORI
1201 SURESH
10-DEC-80 02-AUG-10 25000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
NIRANJAN RAMORI
NIRANJAN RAMORI
NIRANJAN RAMORI
1300 BOBBY
1301 SUNDER
1400 RAMESH
10-DEC-80 02-AUG-10
10-DEC-85 02-AUG-10
10-DEC-83 02-AUG-10
25000
25000
25000
10 rows selected.
SQL> cl scr
SQL> Create Table Students
2 (
3
Studid
NUMBER(6)
4
CONSTRAINT StudIDPK PRIMARY KEY,
5
SName
VARCHAR2(30),
6
Street
VARCHAR2(40),
7
CityName
VARCHAR2(25),
8
StateName
VARCHAR2(40),
9
Pincode Number(6)
10
);
Table created.
SQL> BEGIN
2 INSERT INTO Students
3 VALUES(1200, 'SAMPATH', 'SHIV BAGH', 'HYDERABAD', 'ANDHRA PRADESH',
506001);
4 INSERT INTO Students
5 VALUES(1201, 'SRINIVAS', 'SHYAM NAGAR', 'SECUNDERABAD', 'ANDHRA PRADESH',
506002);
6 INSERT INTO Students
7 VALUES(1202, 'SHIVAJI', 'ANDAL NAGAR', 'CHENNAI', 'TAMIL NADU', 606060);
8 COMMIT;
9 END;
10 /
PL/SQL procedure successfully completed.
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
2
STUDID
-----1200
1201
1202
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
6
7
8
9
StateName
Pincode
);
VARCHAR2(40),
NUMBER(6)
Type created.
SQL>
2
3
4
5
6
7
Type created.
SQL>
2
3
4
5
SELECT
StudID,
SName,
Street, CityName , StateName, Pincode
FROM Students;
STUDID
-----1200
1201
1202
SQL>
2
3
4
5
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
SELECT
StudID,
MyStudent(SName,
Myaddress(Street,
FROM Students;
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
STUDID
-----MYSTUDENT(SNAME,MYADDRESS(STREET,CITYNAME,STATENAME,PINCODE))(SNAME, SADDRESS(ST
-------------------------------------------------------------------------------1200
MYSTUDENT('SAMPATH', MYADDRESS('SHIV BAGH', 'HYDERABAD', 'ANDHRA PRADESH', 50600
1))
1201
MYSTUDENT('SRINIVAS', MYADDRESS('SHYAM NAGAR', 'SECUNDERABAD', 'ANDHRA PRADESH',
506002))
1202
STUDID
-----MYSTUDENT(SNAME,MYADDRESS(STREET,CITYNAME,STATENAME,PINCODE))(SNAME, SADDRESS(ST
-------------------------------------------------------------------------------MYSTUDENT('SHIVAJI', MYADDRESS('ANDAL NAGAR', 'CHENNAI', 'TAMIL NADU', 606060))
SQL>
2
3
4
5
6
7
8
View created.
SQL> DESC StudentOV
Name
Null?
----------------------------------------- -------STUDID
NOT NULL
STUDDEF
Type
---------------------------NUMBER(6)
MYSTUDENT
Type
---------------------------NUMBER(6)
MYSTUDENT
VARCHAR2(30)
MYADDRESS
Type
---------------------------NUMBER(6)
MYSTUDENT
VARCHAR2(30)
MYADDRESS
VARCHAR2(40)
VARCHAR2(25)
VARCHAR2(40)
NUMBER(6)
SQL>
2
3
4
5
6
7
8
9
SELECT
StudID,
E1.StudDEF.Sname Sname,
E1.StudDEF.SAddress.Street Street,
E1.StudDEF.SAddress.CityName CityName,
E1.StudDEF.SAddress.StateName StateName,
E1.StudDEF.SAddress.PinCode PinCode
FROM (SELECT *
FROM StudentOV) E1;
STUDID
-----1200
1201
1202
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
TABTYPE CLUSTERID
------- ---------TABLE
VIEW
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
Type
---------------------------NUMBER(6)
MYSTUDENT
Type
---------------------------NUMBER(6)
MYSTUDENT
VARCHAR2(30)
MYADDRESS
Type
---------------------------NUMBER(6)
MYSTUDENT
VARCHAR2(30)
MYADDRESS
VARCHAR2(40)
VARCHAR2(25)
VARCHAR2(40)
NUMBER(6)
SQL> SELECT *
2 FROM StudentOV;
STUDID
-----STUDDEF(SNAME, SADDRESS(STREET, CITYNAME, STATENAME, PINCODE))
-------------------------------------------------------------------------------1200
MYSTUDENT('SAMPATH', MYADDRESS('SHIV BAGH', 'HYDERABAD', 'ANDHRA PRADESH', 50600
1))
1201
MYSTUDENT('SRINIVAS', MYADDRESS('SHYAM NAGAR', 'SECUNDERABAD', 'ANDHRA PRADESH',
506002))
1202
STUDID
-----STUDDEF(SNAME, SADDRESS(STREET, CITYNAME, STATENAME, PINCODE))
-------------------------------------------------------------------------------MYSTUDENT('SHIVAJI', MYADDRESS('ANDAL NAGAR', 'CHENNAI', 'TAMIL NADU', 606060))
SQL>
2
3
4
5
6
7
8
9
SELECT
StudID,
E1.StudDEF.Sname Sname,
E1.StudDEF.SAddress.Street Street,
E1.StudDEF.SAddress.CityName CityName,
E1.StudDEF.SAddress.StateName StateName,
E1.StudDEF.SAddress.PinCode PinCode
FROM (SELECT *
FROM StudentOV) E1;
STUDID
-----1200
1201
1202
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
5
6
7
8
9
10
11
'SHYAMA NAGAR',
'SECUNDERABAD',
'ANDHRA PRADESH',
506001
)
)
);
1 row created.
SQL> SELECT *
2 FROM Students;
STUDID
-----1200
1201
1202
1203
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
RAMESH
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
SHYAMA NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
SECUNDERABAD
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
ANDHRA PRADESH
506001
'SH
'SE
'AN
506
)
SNAME
--------SRINIVAS
SHIVAJI
RAMESH
STREET
-----------SHYAM NAGAR
ANDAL NAGAR
SHYAMA NAGAR
CITYNAME
------------SECUNDERABAD
CHENNAI
SECUNDERABAD
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506002
TAMIL NADU
606060
ANDHRA PRADESH
506001
STUDID
-----1201
1203
SNAME
--------SRINIVAS
RAMESH
STREET
-----------SHYAM NAGAR
SHYAMA NAGAR
CITYNAME
------------SECUNDERABAD
SECUNDERABAD
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506002
ANDHRA PRADESH
506001
ANDHRA PRADESH
506001
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> BEGIN
2 DELETE FROM STUDENTS;
3 INSERT INTO Students
4 VALUES(1200, 'SAMPATH', 'SHIV BAGH', 'HYDERABAD', 'ANDHRA PRADESH',
506001);
5 INSERT INTO Students
6 VALUES(1201, 'SRINIVAS', 'SHYAM NAGAR', 'SECUNDERABAD', 'ANDHRA PRADESH',
506002);
7 INSERT INTO Students
8 VALUES(1202, 'SHIVAJI', 'ANDAL NAGAR', 'CHENNAI', 'TAMIL NADU', 606060);
9 COMMIT;
10 END;
11 /
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> SELECT * FROM STUDENTS;
STUDID
-----1200
1201
1202
SNAME
STREET
CITYNAME
STATENAME
PINCODE
--------- ------------ ------------- --------------- ------SAMPATH
SHIV BAGH
HYDERABAD
ANDHRA PRADESH
506001
SRINIVAS SHYAM NAGAR SECUNDERABAD ANDHRA PRADESH
506002
SHIVAJI
ANDAL NAGAR CHENNAI
TAMIL NADU
606060
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
BEGIN
INSERT INTO StudentBooks
VALUES(2000, 1200, 'THERMO DYNAMICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2001, 1200, 'FLUID MECHANICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2002, 1200, 'ATOMIC PHYSICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2003, 1201, 'STRUCTURAL DYNAMICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2004, 1201, 'AVIATION THEORY', SYSDATE);
INSERT INTO StudentBooks
VALUES(2005, 1202, 'PROPULSION THEORY', SYSDATE);
COMMIT;
END;
/
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
BEGIN
INSERT INTO StudentBooks
VALUES(2000, 1200, 'THERMO DYNAMICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2001, 1200, 'FLUID MECHANICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2002, 1200, 'ATOMIC PHYSICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2003, 1201, 'STRUCTURAL DYNAMICS', SYSDATE);
INSERT INTO StudentBooks
VALUES(2004, 1201, 'AVIATION THEORY', SYSDATE);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
12
13
14
15
16
17
SQL>
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
BOOKTITLE
-------------------THERMO DYNAMICS
FLUID MECHANICS
ATOMIC PHYSICS
STRUCTURAL DYNAMICS
AVIATION THEORY
PROPULSION THEORY
LENDINGDA
--------03-AUG-10
03-AUG-10
03-AUG-10
03-AUG-10
03-AUG-10
03-AUG-10
6 rows selected.
SQL> CREATE OR REPLACE TYPE StudentType
2 AS OBJECT
3 (
4
Studid NUMBER(6),
5
Sname VARCHAR2(30),
6
Street Varchar2(40),
7
Cityname VARCHAR2(25),
8
Statename VARCHAR2(40),
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
9
10
11
Pincode NUMBER(6)
);
/
Type created.
SQL>
2
3
4
5
6
7
8
View created.
SQL> DESC STUDENTOV
Name
Null?
----------------------------------------- -------STUDID
SNAME
STREET
CITYNAME
STATENAME
PINCODE
Type
---------------------------NUMBER(6)
VARCHAR2(30)
VARCHAR2(40)
VARCHAR2(25)
VARCHAR2(40)
NUMBER(6)
SNAME
--------SAMPATH
SRINIVAS
SHIVAJI
STREET
-----------SHIV BAGH
SHYAM NAGAR
ANDAL NAGAR
CITYNAME
------------HYDERABAD
SECUNDERABAD
CHENNAI
STATENAME
PINCODE
--------------- ------ANDHRA PRADESH
506001
ANDHRA PRADESH
506002
TAMIL NADU
606060
SQL> ED
Wrote file afiedt.buf
1 SELECT SNAME, REF(A) OID
2* FROM STUDENTOV A
SQL> /
SNAME
OID
--------- ------------------------SAMPATH
00004A038A0046A4805E25E10
5476690852B320CDCBAE00000
0014260100010001002900000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
00000090606002A00078401FE
0000000A02C20D00000000000
0000000000000000000000000
0000
SRINIVAS
00004A038A0046A4805E25E10
5476690852B320CDCBAE00000
0014260100010001002900000
SNAME
OID
--------- ------------------------00000090606002A00078401FE
0000000B03C20D02000000000
0000000000000000000000000
0000
SHIVAJI
00004A038A0046A4805E25E10
5476690852B320CDCBAE00000
0014260100010001002900000
00000090606002A00078401FE
0000000B03C20D03000000000
0000000000000000000000000
SNAME
OID
--------- ------------------------0000
SQL> cl scr
SQL>
2
3
4
SELECT
StudID,
LibTranNo, BookTitle, LendingDate
FROM StudentBooks;
View created.
SQL> DESC StudentBooksOV
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Name
Null?
----------------------------------------- -------STUDID
STUDID
SNAME
STREET
CITYNAME
STATENAME
PINCODE
LIBTRANNO
NOT NULL
BOOKTITLE
LENDINGDATE
SQL>
SQL>
SQL>
SQL>
2
Type
---------------------------REF OF STUDENTTYPE
NUMBER(6)
VARCHAR2(30)
VARCHAR2(40)
VARCHAR2(25)
VARCHAR2(40)
NUMBER(6)
NUMBER(6)
VARCHAR2(50)
DATE
STUDID
LIBTRANNO BOOKTITLE
LENDINGDA
-------------------- --------- -------------------- --------00004A038A0046A4805E
2000 THERMO DYNAMICS
03-AUG-10
25E105476690852B320C
DCBAE000000014260100
01000100290000000000
090606002A00078401FE
0000000A02C20D000000
00000000000000000000
00000000000000
00004A038A0046A4805E
25E105476690852B320C
03-AUG-10
STUDID
LIBTRANNO BOOKTITLE
LENDINGDA
-------------------- --------- -------------------- --------DCBAE000000014260100
01000100290000000000
090606002A00078401FE
0000000A02C20D000000
00000000000000000000
00000000000000
00004A038A0046A4805E
25E105476690852B320C
DCBAE000000014260100
01000100290000000000
03-AUG-10
STUDID
LIBTRANNO BOOKTITLE
LENDINGDA
-------------------- --------- -------------------- --------090606002A00078401FE
0000000A02C20D000000
00000000000000000000
00000000000000
00004A038A0046A4805E
2003 STRUCTURAL DYNAMICS 03-AUG-10
25E105476690852B320C
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DCBAE000000014260100
01000100290000000000
090606002A00078401FE
0000000B03C20D020000
STUDID
LIBTRANNO BOOKTITLE
LENDINGDA
-------------------- --------- -------------------- --------00000000000000000000
00000000000000
00004A038A0046A4805E
25E105476690852B320C
DCBAE000000014260100
01000100290000000000
090606002A00078401FE
0000000B03C20D020000
00000000000000000000
00000000000000
03-AUG-10
STUDID
LIBTRANNO BOOKTITLE
LENDINGDA
-------------------- --------- -------------------- --------00004A038A0046A4805E
25E105476690852B320C
DCBAE000000014260100
01000100290000000000
090606002A00078401FE
0000000B03C20D030000
00000000000000000000
00000000000000
03-AUG-10
6 rows selected.
SQL> SELECT DEREF(SB.StudID)
2 FROM StudentBooksOV SB
3 WHERE BookTitle = 'THERMO DYNAMICS';
DEREF(SB.STUDID)(STUDID, SNAME, STREET, CITYNAME, STATENAME, PINCODE)
-------------------------------------------------------------------------------STUDENTTYPE(1200, 'SAMPATH', 'SHIV BAGH', 'HYDERABAD', 'ANDHRA PRADESH', 506001)
SQL> SELECT
2
LibTranNO,
3
BookTitle,
4
LendingDate,
5
DEREF(SB.StudID) StudentData
6 FROM StudentBooksOV SB
7 WHERE BookTitle = 'THERMO DYNAMICS';
LIBTRANNO BOOKTITLE
LENDINGDA
--------- -------------------- --------STUDENTDATA(STUDID, SNAME, STREET, CITYNAME, STATENAME, PINCODE)
-------------------------------------------------------------------------------2000 THERMO DYNAMICS
03-AUG-10
STUDENTTYPE(1200, 'SAMPATH', 'SHIV BAGH', 'HYDERABAD', 'ANDHRA PRADESH', 506001)
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> SELECT
2
StudentBooksData.StudentData.StudID StudID,
3
StudentBooksData.StudentData.Sname Sname,
4
LibTranNO,
5
BookTitle,
6
LendingDate
7 FROM (SELECT
8
LibTranNO,
9
BookTitle,
10
LendingDate,
11
DEREF(SB.StudID) StudentData
12
FROM StudentBooksOV SB
13
) StudentBooksData;
STUDID
---------##########
##########
##########
##########
##########
##########
SNAME
LIBTRANNO BOOKTITLE
LENDINGDA
--------- --------- -------------------- --------SAMPATH
2002 ATOMIC PHYSICS
03-AUG-10
SAMPATH
2001 FLUID MECHANICS
03-AUG-10
SAMPATH
2000 THERMO DYNAMICS
03-AUG-10
SRINIVAS
2004 AVIATION THEORY
03-AUG-10
SRINIVAS
2003 STRUCTURAL DYNAMICS 03-AUG-10
SHIVAJI
2005 PROPULSION THEORY
03-AUG-10
6 rows selected.
SQL> COLUMN STUDID FORMAT 9999
SQL> /
STUDID
-----1200
1200
1200
1201
1201
1202
SNAME
LIBTRANNO BOOKTITLE
LENDINGDA
--------- --------- -------------------- --------SAMPATH
2002 ATOMIC PHYSICS
03-AUG-10
SAMPATH
2001 FLUID MECHANICS
03-AUG-10
SAMPATH
2000 THERMO DYNAMICS
03-AUG-10
SRINIVAS
2004 AVIATION THEORY
03-AUG-10
SRINIVAS
2003 STRUCTURAL DYNAMICS 03-AUG-10
SHIVAJI
2005 PROPULSION THEORY
03-AUG-10
6 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SELECT
2
SQL> BEGIN
2
3
4
5
6
7
8 END;
9 .
SQL> BEGIN
2
3 END;
4 /
END;
*
ERROR at line 3:
ORA-06550: line 3, column 1:
PLS-00103: Encountered the symbol "END" when expecting one of the following:
begin case declare exit for goto if loop mod null pragma
raise return select update while with <an identifier>
<a double-quoted delimited-identifier> <a bind variable> <<
close current delete fetch lock insert open rollback
savepoint set sql execute commit forall merge
<a single-quoted SQL string> pipe
<an alternatively-quoted SQL string>
SQL>
2
3
4
BEGIN
NULL;
END;
/
BEGIN
RETURN;
END;
/
DECLARE
BEGIN
NULL;
END;
/
3 NULL;
4 EXCEPTION
5 END;
6 /
END;
*
ERROR at line 5:
ORA-06550: line 5, column 1:
PLS-00103: Encountered the symbol "END" when expecting one of the following:
pragma when
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 BEGIN
3 NULL;
4 EXCEPTION
5 WHEN OTHERS THEN
6* END;
SQL> /
END;
*
ERROR at line 6:
ORA-06550: line 6, column 1:
PLS-00103: Encountered the symbol "END" when expecting one of the following:
begin case declare exit for goto if loop mod null pragma
raise return select update while with <an identifier>
<a double-quoted delimited-identifier> <a bind variable> <<
close current delete fetch lock insert open rollback
savepoint set sql execute commit forall merge
<a single-quoted SQL string> pipe
<an alternatively-quoted SQL string>
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7*
SQL>
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
/
DECLARE
V_Num NUMBER(4);
V_Bool BOOLEAN;
.
DECLARE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2 x NUMBER(4);
3 .
SQL> cl scr
SQL>
2
SQL>
2
3
SQL>
2
3
4
5
6
7
8
9
10
11
12
SQL>
DECLARE
.
DECLARE
V_Number NUMBER(4);
.
<<MyProgram>>
DECLARE
V_Number NUMBER(4) := 1234;
V_String VARCHAR2(10) := 'SAMPLE'; --A Variable To Hold String
/*
Executable Routine
is About To Begin.
Here We Write The
Operational Logic.
*/
BEGIN
.
SPOOL OFF
SQL> cl scr
SQL> BEGIN
2 .
SQL> SELECT * FROM Dept;
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> cl scr
SQL>
2
3
4
BEGIN
DBMS_OUTPUT.PUT_LINE('First Message From PL/SQL');
END;
/
DECLARE
V_Sample1 NUMBER(2);
V_Sample2 CONSTANT NUMBER(2) := 99;
V_Sample3 NUMBER(2) NOT NULL := 0;
V_Sample4 NUMBER(2) := 50;
V_Sample5 NUMBER(2) DEFAULT 25;
BEGIN
DBMS_OUTPUT.PUT_LINE(V_Sample1);
DBMS_OUTPUT.PUT_LINE(V_Sample2);
DBMS_OUTPUT.PUT_LINE(V_Sample3);
DBMS_OUTPUT.PUT_LINE(V_Sample4);
DBMS_OUTPUT.PUT_LINE(V_Sample5);
END;
/
SET SERVEROUTPUT ON
R
DECLARE
V_Sample1 NUMBER(2);
V_Sample2 CONSTANT NUMBER(2) := 99;
V_Sample3 NUMBER(2) NOT NULL := 0;
V_Sample4 NUMBER(2) := 50;
V_Sample5 NUMBER(2) DEFAULT 25;
BEGIN
DBMS_OUTPUT.PUT_LINE(V_Sample1);
DBMS_OUTPUT.PUT_LINE(V_Sample2);
DBMS_OUTPUT.PUT_LINE(V_Sample3);
DBMS_OUTPUT.PUT_LINE(V_Sample4);
DBMS_OUTPUT.PUT_LINE(V_Sample5);
END;
DECLARE
V_Sample1 NUMBER(2);
V_Sample2 CONSTANT NUMBER(2) := 99;
V_Sample3 NUMBER(2) NOT NULL := 0;
V_Sample4 NUMBER(2) := 50;
V_Sample5 NUMBER(2) DEFAULT 25;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The
9 DBMS_OUTPUT.PUT_LINE('The
10 DBMS_OUTPUT.PUT_LINE('The
11 DBMS_OUTPUT.PUT_LINE('The
12 DBMS_OUTPUT.PUT_LINE('The
13* END;
SQL> /
The Value in Sample1 :
The Value in Sample2 : 99
The Value in Sample3 : 0
The Value in Sample4 : 50
The Value in Sample5 : 25
Value
Value
Value
Value
Value
in
in
in
in
in
Sample1
Sample2
Sample3
Sample4
Sample5
:
:
:
:
:
'||V_Sample1);
'||V_Sample2);
'||V_Sample3);
'||V_Sample4);
'||V_Sample5);
99;
0;
in Sample1 : '||NVL(TO_CHAR(V_Sample1),
in Sample2 : '||NVL(TO_CHAR(V_Sample2),
in Sample3 : '||NVL(TO_CHAR(V_Sample3),
in Sample4 : '||NVL(TO_CHAR(V_Sample4),
in Sample5 : '||NVL(TO_CHAR(V_Sample5),
DECLARE
V_Sample1 NUMBER(2);
V_Sample2 CONSTANT NUMBER(2) :=99;
V_Sample3 NUMBER(2) NOT NULL;
V_Sample4 NUMBER(2) := 50;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Sample1 : '||NVL(TO_CHAR(V_Sample1),
Sample2 : '||NVL(TO_CHAR(V_Sample2),
Sample3 : '||NVL(TO_CHAR(V_Sample3),
Sample4 : '||NVL(TO_CHAR(V_Sample4),
Sample5 : '||NVL(TO_CHAR(V_Sample5),
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1 NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) :=99;
4 V_Sample3 NUMBER(2) NOT NULL := 0;
5 V_Sample4 NUMBER(2) := 50;
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1),
'Not Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'));
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 V_Sample2 := 55;
14 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'));
15* END;
SQL> /
V_Sample2 := 55;
*
ERROR at line 13:
ORA-06550: line 13, column 1:
PLS-00363: expression 'V_SAMPLE2' cannot be used as an assignment target
ORA-06550: line 13, column 1:
PL/SQL: Statement ignored
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1 NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) :=99;
4 V_Sample3 NUMBER(2) NOT NULL := 0;
5 V_Sample4 NUMBER(2) := 50;
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in
'Not Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in
'Not Assigned'));
10 DBMS_OUTPUT.PUT_LINE('The Value in
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in
'Not Assigned'));
14* END;
SQL> /
The Value in Sample1 : Not Assigned
The Value in Sample2 : 99
The Value in Sample3 : 0
The Value in Sample4 : 50
The Value in Sample5 : 25
The Value in Sample5 : 99
Sample1 : '||NVL(TO_CHAR(V_Sample1),
Sample2 : '||NVL(TO_CHAR(V_Sample2),
Sample3 : '||NVL(TO_CHAR(V_Sample3),
Sample4 : '||NVL(TO_CHAR(V_Sample4),
Sample5 : '||NVL(TO_CHAR(V_Sample5),
Sample5 : '||NVL(TO_CHAR(V_Sample2),
14* END;
SQL> /
ERROR:
ORA-01756: quoted string not properly terminated
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) = 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
14* END;
SQL> /
V_Sample1NUMBER(2);
*
ERROR at line 2:
ORA-06550: line 2, column 16:
PLS-00103: Encountered the symbol "(" when expecting one of the following:
constant exception <an identifier>
<a double-quoted delimited-identifier> table LONG_ double ref
char time timestamp interval date binary national character
nchar
The symbol "<an identifier>" was substituted for "(" to continue.
ORA-06550: line 3, column 30:
PLS-00103: Encountered the symbol "=" when expecting one of the following:
:= ; not null default character
The symbol ":= was inserted before "=" to continue.
ORA-06550: line 6, column 1:
PLS-00103: Encountered the symbol "V_SAMPLE5" when expecting one of the
following:
* & = - + ; < / > at in is mod remainder not rem
<an exponent (**)> <> or != or ~= >= <= <> and or like
between || multiset member SUBMULTISET_
Th
ORA-06550: line 8, column 88:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
. ( ) , * % & | = - + < / > at in is mod remainder not rem =>
.. <an exponent (**)> <> or != or ~= >=
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) = 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 :
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 :
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 :
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 :
Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 :
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 :
'Not Assigned'));
14* END;
SQL> /
ERROR:
ORA-01756: quoted string not properly terminated
'||NVL(TO_CHAR(V_Sample1, 'Not
'||NVL(TO_CHAR(V_Sample2),
'||NVL(TO_CHAR(V_Sample3),
||NVL(TO_CHAR(V_Sample4), 'Not
'||NVL(TO_CHAR(V_Sample5),
'||NVL(TO_CHAR(V_Sample12),
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) = 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
14* END;
SQL> /
V_Sample1NUMBER(2);
*
ERROR at line 2:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1NUMBERCONSTANT2);
3 V_Sample2 CONSTANT NUMBER(2) = 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
14* END;
SQL> /
V_Sample1NUMBERCONSTANT2);
*
ERROR at line 2:
ORA-06550: line 2, column 25:
PLS-00103: Encountered the symbol ")" when expecting one of the following:
constant exception <an identifier>
<a double-quoted delimited-identifier> table LONG_ double ref
char time timestamp interval date binary national character
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
nchar
ORA-06550: line 3, column 30:
PLS-00103: Encountered the symbol "=" when expecting one of the following:
:= ; not null default character
The symbol ":= was inserted before "=" to continue.
ORA-06550: line 6, column 1:
PLS-00103: Encountered the symbol "V_SAMPLE5" when expecting one of the
following:
* & = - + ; < / > at in is mod remainder not rem
<an exponent (**)> <> or != or ~= >= <= <> and or like
between || multiset member SUBMULTISET_
Th
ORA-06550: line 8, column 88:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
. ( ) , * % & | = - + < / > at in is mod remainder not rem =>
.. <an exponent (**)> <> or != or ~= >= <= <> and or like as
between from using || member S
ORA-06550:
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1NUMBERCONSTANT2CONSTANT;
3 V_Sample2 CONSTANT NUMBER(2) = 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
14* END;
SQL> /
V_Sample1NUMBERCONSTANT2CONSTANT;
*
ERROR at line 2:
ORA-06550: line 2, column 1:
PLS-00114: identifier 'V_SAMPLE1NUMBERCONSTANT2CONSTA' too long
ORA-06550: line 2, column 33:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
constant exception <an identifier>
<a double-quoted delimited-identifier> table LONG_ double ref
char time timestamp interval date binary national charac
ORA-06550: line 3, column 30:
PLS-00103: Encountered the symbol "=" when expecting one of the following:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample2 CONSTANT NUMBER(2) = 99;
3 V_Sample3 NUMBER(2) NOT NULL;
4 V_Sample4 NUMBER(2) := 50
5 V_Sample5 NUMBER(2) DEFAULT 25;
6 BEGIN
7 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
13* END;
SQL> /
V_Sample2 CONSTANT NUMBER(2) = 99;
*
ERROR at line 2:
ORA-06550: line 2, column 30:
PLS-00103: Encountered the symbol "=" when expecting one of the following:
:= ; not null default character
The symbol ":= was inserted before "=" to continue.
ORA-06550: line 5, column 1:
PLS-00103: Encountered the symbol "V_SAMPLE5" when expecting one of the
following:
* & = - + ; < / > at in is mod remainder not rem
<an exponent (**)> <> or != or ~= >= <= <> and or like
between || multiset member SUBMULTISET_
Th
ORA-06550: line 7, column 88:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
. ( ) , * % & | = - + < / > at in is mod remainder not rem =>
.. <an exponent (**)> <> or != or ~= >= <= <> and or like as
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1 NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) = 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
14* END;
SQL> /
V_Sample2 CONSTANT NUMBER(2) = 99;
*
ERROR at line 3:
ORA-06550: line 3, column 30:
PLS-00103: Encountered the symbol "=" when expecting one of the following:
:= ; not null default character
The symbol ":= was inserted before "=" to continue.
ORA-06550: line 6, column 1:
PLS-00103: Encountered the symbol "V_SAMPLE5" when expecting one of the
following:
* & = - + ; < / > at in is mod remainder not rem
<an exponent (**)> <> or != or ~= >= <= <> and or like
between || multiset member SUBMULTISET_
Th
ORA-06550: line 8, column 88:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
. ( ) , * % & | = - + < / > at in is mod remainder not rem =>
.. <an exponent (**)> <> or != or ~= >= <= <> and or like as
between from using || member S
ORA-06550: line 10, column 1:
PLS-00103: Encountered the symbol "DBMS_OUTPUT" when expecting one of the
following:
:= . ( % ;
The symbol ":=" was substituted for "DBMS_OUTPUT" to continue.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Sample1 NUMBER(2);
3 V_Sample2 CONSTANT NUMBER(2) := 99;
4 V_Sample3 NUMBER(2) NOT NULL;
5 V_Sample4 NUMBER(2) := 50
6 V_Sample5 NUMBER(2) DEFAULT 25;
7 BEGIN
8 DBMS_OUTPUT.PUT_LINE('The Value in Sample1 : '||NVL(TO_CHAR(V_Sample1, 'Not
Assigned'));
9 DBMS_OUTPUT.PUT_LINE('The Value in Sample2 : '||NVL(TO_CHAR(V_Sample2),
'Not Assigned'))
10 DBMS_OUTPUT.PUT_LINE('The Value in Sample3 : '||NVL(TO_CHAR(V_Sample3),
'Not Assigned'));
11 DBMS_OUTPUT.PUT_LINE('The Value in Sample4 : '||NVL(TO_CHAR(V_Sample4),
'Not Assigned'));
12 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample5),
'Not Assigned'));
13 DBMS_OUTPUT.PUT_LINE('The Value in Sample5 : '||NVL(TO_CHAR(V_Sample12),
'Not Assigned'));
14* END;
SQL> /
V_Sample5 NUMBER(2) DEFAULT 25;
*
ERROR at line 6:
ORA-06550: line 6, column 1:
PLS-00103: Encountered the symbol "V_SAMPLE5" when expecting one of the
following:
* & = - + ; < / > at in is mod remainder not rem
<an exponent (**)> <> or != or ~= >= <= <> and or like
between || multiset member SUBMULTISET_
The symbol ";" was substituted for "V_SAMPLE5" to continue.
ORA-06550: line 8, column 88:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
. ( ) , * % & | = - + < / > at in is mod remainder not rem =>
.. <an exponent (**)> <> or != or ~= >= <= <> and or like as
between from using || member S
ORA-06550: line 10, column 1:
PLS-00103: Encountered the symbol "DBMS_OUTPUT" when expecting one of the
following:
:= . ( % ;
The symbol ":=" was substituted for "DBMS_OUTPUT" to continue.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
DECLARE
V_Sample1 NUMBER(2);
V_Sample2 CONSTANT NUMBER(2) := 99;
V_Sample3 NUMBER(2) NOT NULL;
V_Sample4 NUMBER(2) := 50;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Text
BEGIN
DBMS_OUTPUT.PUT_LINE('Text With Out Quotes');
--DBMS_OUTPUT.PUT_LINE('''Text With in Quotes''');
--DBMS_OUTPUT.PUT_LINE('''Text'' ''With'' ''in'' ''Quotes''');
--DBMS_OUTPUT.PUT_LINE(Q'!'Text With in Quotes'!');
--DBMS_OUTPUT.PUT_LINE(Q'!'Text' 'With' 'in' 'Quotes'!');
END;
/
With Out Quotes
BEGIN
DBMS_OUTPUT.PUT_LINE('Text With Out Quotes');
DBMS_OUTPUT.PUT_LINE('''Text With in Quotes''');
--DBMS_OUTPUT.PUT_LINE('''Text'' ''With'' ''in'' ''Quotes''');
--DBMS_OUTPUT.PUT_LINE(Q'!'Text With in Quotes'!');
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DECLARE
String1 VARCHAR2(30) := 'Oracle';
String2 VARCHAR2(30) := 'Corporation';
BEGIN
DBMS_OUTPUT.PUT_LINE('Your First String is : '||String1);
DBMS_OUTPUT.PUT_LINE('Your Second String is : ' ||String2);
DBMS_OUTPUT.PUT_LINE('Your Final String is : '||String1||String2);
END;
/
First String is : Oracle
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
6
DBMS_OUTPUT.PUT_LINE('Your Second Number is : '||TO_CHAR(TO_DATE(MyNumber2,
'J'), 'JSP'));
7
DBMS_OUTPUT.PUT_LINE('The Sum of '||TO_CHAR(TO_DATE(MyNumber1, 'J'),
'JSP')||' and '||TO_CHAR(TO_DATE(MyNumber2, 'J'), 'JSP')||' is :
'||TO_CHAR(TO_DATE(MyNumber1 + MyNumber2, 'J'), 'JSP'));
8* END;
SQL> /
Your First Number is : TEN
Your Second Number is : TWENTY
The Sum of TEN and TWENTY is : THIRTY
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2
String1 VARCHAR2(30) := '&String1';
3
String2 VARCHAR2(30) := '&String2';
4 BEGIN
5
DBMS_OUTPUT.PUT_LINE('Your First String is : '||String1);
6
DBMS_OUTPUT.PUT_LINE('Your Second String is : '||String2);
7
DBMS_OUTPUT.PUT_LINE('Your Final String is : '||String1||String2);
8 END;
9 /
Enter value for string1: Oracle
Enter value for string2: Corporation
Your First String is : Oracle
Your Second String is : Corporation
Your Final String is : OracleCorporation
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2
String1 VARCHAR2(30);
3
String2 VARCHAR2(30);
4 BEGIN
5
String1 := '&String1';
6
DBMS_OUTPUT.PUT_LINE('Your First String is : '||String1);
7
String2 := '&String2';
8
DBMS_OUTPUT.PUT_LINE('Your Second String is : '||String2);
9
DBMS_OUTPUT.PUT_LINE('Your Final String is : '||String1||String2);
10* END;
SQL> /
Enter value for string1: Oracle
Enter value for string2: Corporation
Your First String is : Oracle
Your Second String is : Corporation
Your Final String is : OracleCorporation
PL/SQL procedure successfully completed.
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2
MyNumber1 NUMBER := &Number1;
3
MyNumber2 NUMBER := &Number2;
4 BEGIN
5
DBMS_OUTPUT.PUT_LINE('Your First Number is : '||TO_CHAR(TO_DATE(MyNumber1,
'J'), 'JSP'));
6
DBMS_OUTPUT.PUT_LINE('Your Second Number is : '||TO_CHAR(TO_DATE(MyNumber2,
'J'), 'JSP'));
7
DBMS_OUTPUT.PUT_LINE('The Sum of '||TO_CHAR(TO_DATE(MyNumber1, 'J'),
'JSP')||' and '||TO_CHAR(TO_DATE(MyNumber2, 'J'), 'JSP')||' is :
'||TO_CHAR(TO_DATE(MyNumber1 + MyNumber2, 'J'), 'JSP'));
8* END;
SQL> /
Enter value for number1: 25
Enter value for number2: 45
Your First Number is : TWENTY-FIVE
Your Second Number is : FORTY-FIVE
The Sum of TWENTY-FIVE and FORTY-FIVE is : SEVENTY
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_FirstName
VARCHAR2(30) := '&FName';
3 V_MiddleName VARCHAR2(30) := '&MName';
4 V_LastName
VARCHAR2(30) := '&LName';
5 V_DOB
DATE := '&DateOfBirth';
6 BEGIN
7 DBMS_OUTPUT.PUT_LINE('Your First Name is : '||V_FirstName);
8 DBMS_OUTPUT.PUT_LINE('Your Middle Name is : '||V_MiddleName);
9 DBMS_OUTPUT.PUT_LINE('Your Last Name is : '||V_LastName);
10 DBMS_OUTPUT.PUT_LINE('******Concatenating******');
11 DBMS_OUTPUT.PUT_LINE('Your Full Name is : '||V_FirstName||'
'||V_MiddleName||' '||V_LastName);
12 DBMS_OUTPUT.PUT_LINE('Your Date of Birth is : '|| V_DOB);
13 DBMS_OUTPUT.PUT_LINE('Your Were Born on : '|| TO_CHAR(V_DOB, 'Day'));
14 DBMS_OUTPUT.PUT_LINE('Your Present Age is : '|| TRUNC((SYSDATEV_DOB)/365));
15* END;
SQL> /
Enter value for fname: Sample
Enter value for mname: Simple
Enter value for lname: Text
Enter value for dateofbirth: 12-JAN-96
Your First Name is : Sample
Your Middle Name is : Simple
Your Last Name is : Text
******Concatenating******
Your Full Name is : Sample Simple Text
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DECLARE
BEGIN
NULL;
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
EXCEPTION
WHEN OTHERS THEN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
13
14
15
NULL;
END;
/
DECLARE
BEGIN
NULL;
DECLARE
BEGIN
NULL;
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
/
DECLARE
BEGIN
NULL;
DECLARE
BEGIN
NULL;
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
DECLARE
BEGIN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35*
SQL>
NULL;
EXCEPTION
WHEN OTHERS THEN
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
NULL;
END;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
/
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
END;
EXCEPTION
WHEN OTHERS THEN
DECLARE
BEGIN
NULL;
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
DECLARE
BEGIN
NULL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
NULL;
END;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
NULL;
END;
/
SQL> cl scr
SQL> SET SERVEROUTPUT ON
SQL> SET VERIFY OFF
SQL> cl scr
SQL> DECLARE
2 V_Empno
NUMBER := &EnterEmpno;
3 V_EName
VARCHAR2(30);
4 V_Job
VARCHAR2(30);
5 V_Sal
NUMBER(7, 2);
6 BEGIN
7 SELECT
8 Ename, Job, Sal
9 INTO
10 V_Ename, V_Job, V_Sal
11 FROM EMP
12 WHERE Empno = V_Empno;
13 DBMS_OUTPUT.PUT_LINE('The Name : '||V_Ename);
14 DBMS_OUTPUT.PUT_LINE('The job : '||V_Job);
15 DBMS_OUTPUT.PUT_LINE('The Sal: '||V_Sal);
16 END;
17 /
Enter value for enterempno: 7839
The Name : KING
The job : PRESIDENT
The Sal: 5000
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 V_Empno
NUMBER(4):=&EnterEmpno;
3 V_EName
VARCHAR2(30);
4 V_Sal
NUMBER(7,2);
5 V_Comm
NUMBER(7,2);
6 BEGIN
7 SELECT
8 EName, Sal, Comm
9 INTO V_EName, V_Sal, V_Comm
10 FROM EMP
11 WHERE Empno = V_Empno;
12 DBMS_OUTPUT.PUT_LINE('The Name : '||INITCAP(V_Ename));
13 DBMS_OUTPUT.PUT_LINE('The Salary : '||TO_CHAR(V_Sal, '99,999.99'));
14 DBMS_OUTPUT.PUT_LINE('The Commission : '||NVL(TO_CHAR(V_Comm), 'No
Commission'));
15 DBMS_OUTPUT.PUT_LINE('The Total Sal is : '||TO_CHAR(V_Sal + NVL(V_Comm,
0)));
16 END;
17 /
Enter value for enterempno: 7654
The Name : Martin
The Salary :
1,250.00
The Commission : 1400
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for enterempno: 7839
The Details of Employee Number 7839 Requested by You Are ...
The Employee Name : King
The Department Number : 10
The Designation : President
The Manager Number : "Cannot be Managed", and his Name is : KING
The Joining Date : 17, November Nineteen Eighty-One
The Basic Salary : INR
5,000.00
The Commission Earned : No Commission...Sorry!
PL/SQL procedure successfully completed.
SQL> DECLARE
2 V_Empno
NUMBER(4) := &EnterEmpNo;
3 V_Ename
VARCHAR2(30);
4 V_Deptno
NUMBER(2);
5 V_Job
VARCHAR2(30);
6 V_MGR
NUMBER(4);
7 V_HireDate
DATE;
8 V_Sal
NUMBER(7, 2);
9 V_Comm
NUMBER(7, 2);
10 V_MGRName
VARCHAR2(30);
11 V_OrgMaxSal NUMBER(7, 2);
12 V_OrgMinSal NUMBER(7, 2);
13 V_OrgAvgSal NUMBER(7, 2);
14 V_DeptAvgSal NUMBER(7, 2);
15 BEGIN
16 SELECT
17 Ename, Deptno, Job, MGR, HireDate, Sal, Comm
18 INTO
19 V_Ename , V_Deptno, V_Job, V_MGR, V_HireDate, V_Sal, V_Comm
20 FROM Emp
21 WHERE Empno = V_Empno;
22 IF V_MGR IS NOT NULL THEN
23
SELECT Ename INTO V_MGRName
24
FROM Emp
25
WHERE Empno = V_MGR;
26 ELSE
27
SELECT Ename INTO V_MGRName
28
FROM Emp
29
WHERE MGR IS NULL;
30 END IF;
31 SELECT MAX(Sal), MIN(Sal), AVG(Sal) INTO V_OrgMaxSal, V_OrgMinSal,
V_OrgAvgSal
32 FROM Emp;
33 SELECT AVG(Sal) INTO V_DeptAvgSal
34 FROM Emp
35 WHERE Deptno = V_Deptno;
36 DBMS_OUTPUT.PUT_LINE('The Details of Employee Number '||V_Empno||'
Requested by You Are ...');
37 DBMS_OUTPUT.PUT_LINE('The Employee Name : '||INITCAP(V_Ename));
38 DBMS_OUTPUT.PUT_LINE('The Department Number : '||V_Deptno);
39 DBMS_OUTPUT.PUT_LINE('The Designation : '||INITCAP(V_Job));
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
The
The
The
The
The
The
The
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_EmpRecord Emp%ROWTYPE;
3 BEGIN
4 SELECT Empno, Ename, Job, Sal, Comm
5 INTO
6 V_EmpRecord.Empno,
7 V_EmpRecord.Ename,
8 V_EmpRecord.Job,
9 V_EmpRecord.Sal,
10 V_EmpRecord.Comm
11 FROM EMP
12 WHERE Empno = &EnterEmpno;
13 DBMS_OUTPUT.PUT_LINE('The Name : '|| V_EmpRecord.Ename);
14 DBMS_OUTPUT.PUT_LINE('The Job : '|| V_EmpRecord.Job);
15 DBMS_OUTPUT.PUT_LINE('The Salary : '||V_EmpRecord.Sal);
16 DBMS_OUTPUT.PUT_LINE('The Commission : '|| V_EmpRecord.Comm);
17 DBMS_OUTPUT.PUT_LINE('The Gross Salary : ' ||(V_EmpRecord.Sal +
NVL(V_EmpRecord.Comm, 0)));
18* END;
SQL> /
Enter value for enterempno: 7839
The Name : KING
The Job : PRESIDENT
The Salary : 5000
The Commission :
The Gross Salary : 5000
PL/SQL procedure successfully completed.
SQL> DECLARE
2 EmpRecord Emp%ROWTYPE;
3 V_EmpRecord EmpRecord%TYPE; --Sub Type Creation Out of EmpRecord Type
4 BEGIN
5 SELECT * INTO V_EmpRecord
6 FROM EMP
7 WHERE Empno = &EnterEmpno;
8 DBMS_OUTPUT.PUT_LINE('The Name : '|| V_EmpRecord.Ename);
9 DBMS_OUTPUT.PUT_LINE('The Job : '|| V_EmpRecord.Job);
10 DBMS_OUTPUT.PUT_LINE('The Salary : '||V_EmpRecord.Sal);
11 DBMS_OUTPUT.PUT_LINE('The Commission : '|| V_EmpRecord.Comm);
12 DBMS_OUTPUT.PUT_LINE('The Gross Salary : ' ||(V_EmpRecord.Sal +
NVL(V_EmpRecord.Comm, 0)));
13 END;
14 /
Enter value for enterempno: 7839
The Name : KING
The Job : PRESIDENT
The Salary : 5000
The Commission :
The Gross Salary : 5000
PL/SQL procedure successfully completed.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2 V_Num1 NUMBER(2) := &GNum1;
3 BEGIN
4 DBMS_OUTPUT.PUT_LINE('The V_Num1 : '||V_Num1);
5
DECLARE
6
V_Num2 NUMBER(2) := V_Num1;
7
BEGIN
8
DBMS_OUTPUT.PUT_LINE('The V_Num2 : '||V_Num21);
9
END;
10 END;
11 /
Enter value for gnum1: 25
DBMS_OUTPUT.PUT_LINE('The V_Num2 : '||V_Num21);
*
ERROR at line 8:
ORA-06550: line 8, column 40:
PLS-00201: identifier 'V_NUM21' must be declared
ORA-06550: line 8, column 2:
PL/SQL: Statement ignored
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Num1 NUMBER(2) := &GNum1;
3 BEGIN
4 DBMS_OUTPUT.PUT_LINE('The V_Num1 : '||V_Num1);
5
DECLARE
6
V_Num2 NUMBER(2) := V_Num1;
7
BEGIN
8
DBMS_OUTPUT.PUT_LINE('The V_Num2 : '||V_Num2);
9
END;
10* END;
SQL> /
Enter value for gnum1: 25
The V_Num1 : 25
The V_Num2 : 25
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10*
DECLARE
V_Num1 NUMBER(3) := &GNum1;
BEGIN
DBMS_OUTPUT.PUT_LINE('The V_Num1 : '||V_Num1);
DECLARE
V_Num2 NUMBER(2) := V_Num1;
BEGIN
DBMS_OUTPUT.PUT_LINE('The V_Num2 : '||V_Num2);
END;
END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for gnum1: 125
The V_Num1 : 125
DECLARE
*
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error: number precision too large
ORA-06512: at line 6
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Num1 NUMBER(2) := &GNum1;
3 BEGIN
4 DBMS_OUTPUT.PUT_LINE('The V_Num1 : '||V_Num1);
5
DECLARE
6
V_Num2 V_Num1%TYPE := V_Num1;
7
BEGIN
8
DBMS_OUTPUT.PUT_LINE('The V_Num2 : '||V_Num2);
9
END;
10* END;
SQL> /
Enter value for gnum1: 25
The V_Num1 : 25
The V_Num2 : 25
PL/SQL procedure successfully completed.
SQL> /
Enter value for gnum1: 12
The V_Num1 : 12
The V_Num2 : 12
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Num1 NUMBER(3) := &GNum1;
3 BEGIN
4 DBMS_OUTPUT.PUT_LINE('The V_Num1 : '||V_Num1);
5
DECLARE
6
V_Num2 V_Num1%TYPE := V_Num1;
7
BEGIN
8
DBMS_OUTPUT.PUT_LINE('The V_Num2 : '||V_Num2);
9
END;
10* END;
SQL> /
Enter value for gnum1: 125
The V_Num1 : 125
The V_Num2 : 125
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DECLARE
V_Empno NUMBER(4) := &EnterEmpNo;
TYPE EmpRecordType IS RECORD
(
V_Ename
VARCHAR2(30),
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
6
V_Deptno
NUMBER(2),
7
V_Job
VARCHAR2(30)
8 );
9 EmpRecord EmpRecordType;
10 BEGIN
11 SELECT Ename, Deptno, Job
12 INTO
13 EmpRecord.V_Ename , EmpRecord.V_Deptno, EmpRecord.V_Job
14 FROM Emp
15 WHERE Empno = V_Empno;
16 DBMS_OUTPUT.PUT_LINE('The Details of Employee Number '||V_Empno||'
Requested by You Are ...');
17 DBMS_OUTPUT.PUT_LINE('The Employee Name : '||EmpRecord.V_Ename);
18 DBMS_OUTPUT.PUT_LINE('The Department Number : '||EmpRecord.V_Deptno);
19 DBMS_OUTPUT.PUT_LINE('The Designation : '||EmpRecord.V_Job);
20 END;
21 /
Enter value for enterempno: 7654
The Details of Employee Number 7654 Requested by You Are ...
The Employee Name : MARTIN
The Department Number : 30
The Designation : SALESMAN
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Empno NUMBER(4) := &EnterEmpNo;
3 V_Ename
VARCHAR2(30);
4 V_Deptno
NUMBER(2);
5 V_Job
VARCHAR2(30);
6 BEGIN
7 SELECT Ename, Deptno, Job
8 INTO
9 V_Ename , V_Deptno, V_Job
10 FROM Emp
11 WHERE Empno = V_Empno;
12 DBMS_OUTPUT.PUT_LINE('The Details of Employee Number '||V_Empno||'
Requested by You Are ...');
13 DBMS_OUTPUT.PUT_LINE('The Employee Name : '||V_Ename);
14 DBMS_OUTPUT.PUT_LINE('The Department Number : '||V_Deptno);
15 DBMS_OUTPUT.PUT_LINE('The Designation : '||V_Job);
16* END;
SQL> /
Enter value for enterempno: 7654
The Details of Employee Number 7654 Requested by You Are ...
The Employee Name : MARTIN
The Department Number : 30
The Designation : SALESMAN
PL/SQL procedure successfully completed.
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2 V_Empno NUMBER(4) := &EnterEmpNo;
3 TYPE EmpRecordType IS RECORD
4 (
5
Ename VARCHAR2(30),
6
Deptno
NUMBER(2),
7
Job
VARCHAR2(30),
8
MGR
NUMBER(4),
9
HireDate
DATE,
10
Sal
NUMBER(7,2),
11
Comm NUMBER(7,2)
12 );
13 EmpRecord EmpRecordType;
14 BEGIN
15 SELECT Ename, Deptno, Job, MGR, HireDate, Sal, Comm
16 INTO
17 EmpRecord.Ename , EmpRecord.Deptno, EmpRecord.Job, EmpRecord.MGR,
EmpRecord.HireDate, EmpRecord.Sal, EmpRecord.Comm
18 FROM Emp
19 WHERE Empno = V_Empno;
20 DBMS_OUTPUT.PUT_LINE('The Details of Employee Number '||V_Empno||'
Requested by You Are ...');
21 DBMS_OUTPUT.PUT_LINE('The Employee Name : '||EmpRecord.Ename);
22 DBMS_OUTPUT.PUT_LINE('The Department Number : '||EmpRecord.Deptno);
23 DBMS_OUTPUT.PUT_LINE('The Designation : '||EmpRecord.Job);
24 DBMS_OUTPUT.PUT_LINE('The Manager Number : '||EmpRecord.MGR);
25 DBMS_OUTPUT.PUT_LINE('The Joining Date : '||EmpRecord.HireDate);
26 DBMS_OUTPUT.PUT_LINE('The Basic Salary : '||EmpRecord.Sal);
27 DBMS_OUTPUT.PUT_LINE('The Commission Earned : '||EmpRecord.Comm);
28 END;
29 /
Enter value for enterempno: 7654
The Details of Employee Number 7654 Requested by You Are ...
The Employee Name : MARTIN
The Department Number : 30
The Designation : SALESMAN
The Manager Number : 7698
The Joining Date : 28-SEP-81
The Basic Salary : 1250
The Commission Earned : 1400
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
DECLARE
TYPE AtomicTypes IS RECORD /*Atomic Type Creation*/
(
Empno Emp.Empno%TYPE,
MgrName Emp.Ename%TYPE
);
TYPE AllTablesRecord IS RECORD /*Nested Type Creation*/
(
EmpRecord Emp%ROWTYPE,
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10
DeptRecord Dept%ROWTYPE,
11
SalGradeRecord SalGrade%ROWTYPE,
12
AtomicType AtomicTypes /*Type Instance in Another Type*/
13 );
14 V_AllTablesRecord AllTablesRecord; /*Type Instantiation*/
15 BEGIN
16 V_AllTablesRecord.AtomicType.Empno := &EnterEmpno;
17 SELECT Ename, Deptno, Job, MGR, HireDate, Sal, Comm
18 INTO
19 V_AllTablesRecord.Emprecord.Ename ,
20 V_AllTablesRecord.Emprecord.Deptno,
21 V_AllTablesRecord.Emprecord.Job,
22 V_AllTablesRecord.Emprecord.MGR,
23 V_AllTablesRecord.Emprecord.HireDate,
24 V_AllTablesRecord.Emprecord.Sal,
25 V_AllTablesRecord.Emprecord.Comm
26 FROM Emp
27 WHERE Empno = V_AllTablesRecord.AtomicType.Empno;
28 SELECT Dname, Loc INTO V_AllTablesRecord.DeptRecord.
Dname,V_AllTablesRecord.DeptRecord.Loc
29 FROM Dept
30 WHERE Deptno = V_AllTablesRecord.Emprecord.Deptno;
31 SELECT Grade INTO V_AllTablesRecord.SalGradeRecord.Grade
32 FROM SalGrade
33 WHERE V_AllTablesRecord.Emprecord.Sal BETWEEN LoSal AND HiSal;
34 IF V_AllTablesRecord.Emprecord.MGR IS NOT NULL THEN
35 SELECT Ename INTO V_AllTablesRecord.AtomicType.MgrName
36 FROM Emp
37 WHERE Empno = V_AllTablesRecord.Emprecord.MGR;
38 ELSE
39 SELECT Ename INTO V_AllTablesRecord.AtomicType.MgrName
40 FROM Emp
41 WHERE MGR IS NULL;
42 END IF;
43 DBMS_OUTPUT.PUT_LINE('The Details of Employee Number
'||V_AllTablesRecord.AtomicType.Empno||' Requested by You Are ...');
44 DBMS_OUTPUT.PUT_LINE('The Employee Name :
'||V_AllTablesRecord.Emprecord.Ename);
45 DBMS_OUTPUT.PUT_LINE('The Department Number :
'||V_AllTablesRecord.Emprecord.Deptno||', Department Name is
'||INITCAP(V_AllTablesRecord.DeptRecord.Dname)||', and is Situated at
'||INITCAP(V_AllTablesRecord.DeptRecord.Loc));
46 DBMS_OUTPUT.PUT_LINE('The Designation :
'||V_AllTablesRecord.Emprecord.Job);
47 DBMS_OUTPUT.PUT_LINE('The Manager Number :
'||NVL(TO_CHAR(V_AllTablesRecord.Emprecord.MGR),'"Cannot be Managed"')||', and
his Name is : '||V_AllTablesRecord.AtomicType.MgrName);
48 DBMS_OUTPUT.PUT_LINE('The Joining Date :
'||V_AllTablesRecord.Emprecord.HireDate);
49 DBMS_OUTPUT.PUT_LINE('The Basic Salary : '||CONCAT('INR
',TO_CHAR(V_AllTablesRecord.Emprecord.Sal,'99,999.99'))||' and his Grade as Per
Salary is '||V_AllTablesRecord.SalGradeRecord.Grade);
50 DBMS_OUTPUT.PUT_LINE('The Commission Earned :
'||NVL(TO_CHAR(V_AllTablesRecord.Emprecord.Comm),'No Commission...Sorry!'));
51 END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
52 /
Enter value for enterempno: 7654
The Details of Employee Number 7654 Requested by You Are ...
The Employee Name : MARTIN
The Department Number : 30, Department Name is Sales, and is Situated at Chicago
The Designation : SALESMAN
The Manager Number : 7698, and his Name is : BLAKE
The Joining Date : 28-SEP-81
The Basic Salary : INR
1,250.00 and his Grade as Per Salary is 2
The Commission Earned : 1400
PL/SQL procedure successfully completed.
SQL>
SQL>
SQL>
SQL>
SPOOL OFF
SET SERVEROUTPUT ON
SET VERIFY OFF
cl scr
SQL> DECLARE
2 /*
3 Declaration of The
4 PL/SQL Table Data Type.
5 */
6 TYPE Dept_Table_Type --Name of The PL/SQL Table Type
7 IS TABLE OF
8 Dept.Dname%TYPE --The Data Column of The PL/SQL Table
9 INDEX BY BINARY_INTEGER; --Index on The PL/SQL Table
10 My_Dept_Table Dept_Table_Type; --Instance of the PL/SQL Table
11 V_Count
NUMBER(2);
12 BEGIN
13
SELECT COUNT(*)
14
INTO V_Count
15
FROM Dept;
16
/*
17
Loading OR Populating The PL/SQL Table
18
With Data into data Column Using The Index As
19
A Reference To PL/SQL Table.
20
*/
21
FOR MyIndex IN 1..V_Count LOOP
22
SELECT Dname --Getting The Data For Dname Column From Database
23
INTO My_Dept_Table(MyIndex) --Assigning The Data To The PL/SQL
Table Index Ponited By MyIndex Variable
24
FROM Dept
25
WHERE Deptno = MyIndex * 10;
26
END LOOP;
27
/*
28
Loading OR Populating The PL/SQL Table
29
is Completed And The PL/SQL Table is Ready For
30
Operations OR Business Logic Implementation.
31
*/
32
/*
33
Operations For Business Oriented Requirements
34
On The Data Taken From The PL/SQL Table
35
Index By Index
36
*/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
37
FOR MYIndex IN
1..V_Count LOOP
38
DBMS_OUTPUT.PUT_LINE(My_Dept_Table(MyIndex)); --Referencing The
Required Data From The PL/SQL Table Through Index.
39
END LOOP;
40
/*
41
Operations For Business Oriented Requirements
42
On The Data Taken From The PL/SQL Table
43
Index By Index End Here
44
*/
45 END;
46 /
ACCOUNTING
RESEARCH
SALES
OPERATIONS
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2
TYPE Dept_Table_Type
3
IS TABLE OF
4
Dept%ROWTYPE
5
INDEX BY
BINARY_INTEGER;
6
My_Dept_Table
Dept_Table_Type;
7
V_Count
NUMBER(2);
8 BEGIN
9
SELECT COUNT(*)
10
INTO V_Count
11
FROM
Dept;
12
FOR MyIndex IN 1..V_Count
13
LOOP
14
SELECT *
15
INTO My_Dept_Table(MyIndex)
16
FROM Dept
17
WHERE
Deptno = MyIndex * 10;
18
END
LOOP;
19
FOR MyIndex IN 1..V_Count
20
LOOP
21
DBMS_OUTPUT.PUT_LINE('Dept. '|| My_Dept_Table(MyIndex).Deptno
||' '
22 ||My_Dept_Table(MyIndex).Dname||' is Located in ' ||
My_Dept_Table(MyIndex).Loc);
23
END LOOP;
24 END;
25 /
Dept. 10 ACCOUNTING is Located in NEW YORK
Dept. 20 RESEARCH is Located in DALLAS
Dept. 30 SALES is Located in CHICAGO
Dept. 40 OPERATIONS is Located in BOSTON
PL/SQL procedure successfully completed.
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
SELECT
EMPNO
----7369
7499
7521
7566
7654
7698
7782
7788
7839
7844
7876
ENAME
---------SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ---------- --------- ----- ----- -----CLERK
7902 17-DEC-80
800
20
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 22-FEB-81 1250
500
30
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
ANALYST
7566 09-DEC-82 3000
20
PRESIDENT
17-NOV-81 5000
10
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7788 12-JAN-83 1100
20
EMPNO
----7900
7902
7934
ENAME
---------JAMES
FORD
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ---------- --------- ----- ----- -----CLERK
7698 03-DEC-81
950
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> SELECT ROWID, Empno, Ename, Sal FROM Emp;
ROWID
EMPNO ENAME
SAL
------------------ ----- ---------- ----AAAMbGAAEAAAAA2AAA 7839 KING
5000
AAAMbGAAEAAAAA2AAB 7698 BLAKE
2850
AAAMbGAAEAAAAA2AAC 7782 CLARK
2450
AAAMbGAAEAAAAA2AAD 7566 JONES
2975
AAAMbGAAEAAAAA2AAE 7654 MARTIN
1250
AAAMbGAAEAAAAA2AAF 7499 ALLEN
1600
AAAMbGAAEAAAAA2AAG 7844 TURNER
1500
AAAMbGAAEAAAAA2AAH 7900 JAMES
950
AAAMbGAAEAAAAA2AAI 7521 WARD
1250
AAAMbGAAEAAAAA2AAJ 7902 FORD
3000
AAAMbGAAEAAAAA2AAK 7369 SMITH
800
ROWID
EMPNO ENAME
SAL
------------------ ----- ---------- ----AAAMbGAAEAAAAA2AAL 7788 SCOTT
3000
AAAMbGAAEAAAAA2AAM 7876 ADAMS
1100
AAAMbGAAEAAAAA2AAN 7934 MILLER
1300
14 rows selected.
SQL> DECLARE
2 TYPE Emp_Table_Type
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3 IS TABLE OF
4 Emp%ROWTYPE
5 INDEX BY BINARY_INTEGER;
6 My_Emp_Table Emp_Table_Type;
7 V_RowID NUMBER(2) := 65;
8 V_EmpCount NUMBER(2);
9 BEGIN
10 SELECT COUNT(*)
11 INTO V_EmpCount
12 FROM Emp;
13 FOR MyIndex IN 1..V_EmpCount LOOP
14 SELECT *
15 INTO My_Emp_Table(MyIndex)
16 FROM Emp
17 WHERE SUBSTR(ROWID,18,1) = CHR(V_RowID);
18 V_RowID := V_RowID + 1;
19 END LOOP;
20 DBMS_OUTPUT.PUT_LINE(RPAD('Employees Information', 80));
21 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
22 DBMS_OUTPUT.PUT_LINE(RPAD('EmpNo', 8)|| RPAD('Ename', 12)||RPAD('Job',
12)||RPAD('Deptno', 8)||RPAD('Mgr', 10)||RPAD('Hiredate', 12)||RPAD('Sal',
12)||RPAD('Comm', 10));
23 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
24 FOR MyIndex IN 1..V_EmpCount LOOP
25 DBMS_OUTPUT.PUT_LINE(RPAD(My_Emp_Table(MyIndex).Empno, 8)
||RPAD(My_Emp_Table(MyIndex).Ename, 12)||RPAD(My_Emp_Table(MyIndex).Job,
12)||RPAD(My_Emp_Table(MyIndex).Deptno,
8)||NVL(TO_CHAR(RPAD(My_Emp_Table(MyIndex).MGR, 10)),'No
Manager')||RPAD(My_Emp_Table(MyIndex).Hiredate,
12)||RPAD(My_Emp_Table(MyIndex).Sal,
12)||NVL(TO_CHAR(RPAD(My_Emp_Table(MyIndex).Comm, 12)),'-NA-'));
26 END LOOP;
27 DBMS_OUTPUT.PUT_LINE(My_Emp_Table.COUNT||' Rows Selected.');
28 END;
29 /
Employees Information
-------------------------------------------------------------------------------EmpNo
Ename
Job
Deptno Mgr
Hiredate
Sal
Comm
-------------------------------------------------------------------------------7839
KING
PRESIDENT
10
No Manager17-NOV-81
5000
-NA7698
BLAKE
MANAGER
30
7839
01-MAY-81
2850
-NA7782
CLARK
MANAGER
10
7839
09-JUN-81
2450
-NA7566
JONES
MANAGER
20
7839
02-APR-81
2975
-NA7654
MARTIN
SALESMAN
30
7698
28-SEP-81
1250
1400
7499
ALLEN
SALESMAN
30
7698
20-FEB-81
1600
300
7844
TURNER
SALESMAN
30
7698
08-SEP-81
1500
0
7900
JAMES
CLERK
30
7698
03-DEC-81
950
-NA7521
WARD
SALESMAN
30
7698
22-FEB-81
1250
500
7902
FORD
ANALYST
20
7566
03-DEC-81
3000
-NA7369
SMITH
CLERK
20
7902
17-DEC-80
800
-NA7788
SCOTT
ANALYST
20
7566
09-DEC-82
3000
-NA7876
ADAMS
CLERK
20
7788
12-JAN-83
1100
-NA7934
MILLER
CLERK
10
7782
23-JAN-82
1300
-NA14 Rows Selected.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
The
The
The
The
Previous Record of 4th Record of PLSQL Table is 3 and the Data is : SALES
Next Record of 1st Record of PLSQL Table is 2 and the Data is : RESEARCH
Department Exists
Department Name is, SALES
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
Enter
Enter
Enter
Enter
Enter
value
value
value
value
value
for
for
for
for
for
enterjob: CLERK
entermgrno: 7566
enterhiredate: 05-JUL-10
entersal: 2500
entercomm: NULL
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
CARGO
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
MUMBAI
6 rows selected.
SQL>
2
3
4
UPDATE Dept
SET
Dname = 'COURIER'
WHERE Deptno = 60;
1 row updated.
SQL>
2
3
4
5
6
7
BEGIN
UPDATE Dept
SET
Dname = 'COURIER'
WHERE Deptno = 50;
END;
/
DECLARE
V_EmpRecord Emp%ROWTYPE;
V_Empno Emp.Empno%TYPE NOT NULL := &EnterEmpno;
V_Sal Emp.Sal%TYPE NOT NULL := &EnterNewSal;
V_Comm Emp.Comm%TYPE NOT NULL := &EnterNewComm;
V_MGRName Emp.Ename%TYPE;
BEGIN
SELECT * INTO V_EmpRecord
FROM Emp
WHERE Empno = V_Empno;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
51 --COMMIT;
52 END;
53 /
Enter value for enterempno: 7654
Enter value for enternewsal: 4000
Enter value for enternewcomm: 1000
The Original Details of Employee Number Requested for Update are 7654
The Employee Name : Martin
The Original Basic Salary : INR
1,250.00
The Original Commission Earned : 1400
The Updation of Data is Under Process... Please Wait...
The Updation of Data Was Sucessful... Thank You...for using the Data Updation
Services...
The Details of Updated Employee Record are as Follows...
The Employee Number : 7654
The Employee Name : Martin
The Department Number : 30
The Designation : Salesman
The Manager Number : 7698 , and his Name is : BLAKE
The Joining Date : 28, September Nineteen Eighty-One
The Basic Salary Updated is : INR
4,000.00
The Commission Updated is : 1000
PL/SQL procedure successfully completed.
SQL> /
Enter value for enterempno: 7566
Enter value for enternewsal: 4500
Enter value for enternewcomm: 600
The Original Details of Employee Number Requested for Update are 7566
The Employee Name : Jones
The Original Basic Salary : INR
2,975.00
The Original Commission Earned : No Commission...Sorry!
Mr. Jones Cannot be Updated as he is not Eligible for Commission...
The Updation of Data Was Not Sucessful... Thank You...for using the Data
Updation Services...
PL/SQL procedure successfully completed.
SQL> SPOOL OFF
SQL> cl scr
SQL> DELETE FROM Emp
2 WHERE Empno = 7654;
1 row deleted.
SQL> ROLLBACK;
Rollback complete.
SQL>
2
3
4
BEGIN
DELETE FROM Emp
WHERE Empno = 7654;
END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for enterempno: 7782
old
3: V_Empno Emp.Empno%TYPE NOT NULL := &EnterEmpno;
new
3: V_Empno Emp.Empno%TYPE NOT NULL := 7782;
The Details of Employee Number Being Deleted are 7782
The Employee Name : Clark
The Department Number : 10
The Designation : Manager
The Manager Number : 7839, and his Name is : KING
The Joining Date : 9, June Nineteen Eighty-One
The Basic Salary : INR
2,450.00
The Commission Earned : No Commission...Sorry!
The Deletion Under Process... Please Wait...
DECLARE
*
ERROR at line 1:
ORA-02292: integrity constraint (SCOTT.EMP_SELF_KEY) violated - child record
found
ORA-06512: at line 27
SQL> cl scr
SQL> SET VERIFY OFF
SQL> cl scr
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
cl scr
ENAME
---------KING
BLAKE
CLARK
JONES
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
ANALYST
7566 09-DEC-82 3000
20
EMPNO
----7876
7934
ENAME
---------ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
13 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
7566
7499
7844
7900
7521
7902
7369
7788
ENAME
---------KING
BLAKE
CLARK
JONES
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
ANALYST
7566 09-DEC-82 3000
20
EMPNO
----7876
7934
ENAME
---------ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
13 rows selected.
SQL> SELECT Ename, Deptno, Job, Sal
2 FROM Emp
3 WHERE Deptno = 30;
ENAME
DEPTNO JOB
SAL
---------- ------ --------- ----BLAKE
30 MANAGER
2850
ALLEN
30 SALESMAN
1600
TURNER
30 SALESMAN
1500
JAMES
30 CLERK
950
WARD
30 SALESMAN
1250
SQL> cl scr
SQL> SELECT * FROm Emp;
EMPNO
----7839
7698
7782
7566
7499
7844
7900
7521
7902
7369
7788
ENAME
---------KING
BLAKE
CLARK
JONES
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
ANALYST
7566 09-DEC-82 3000
20
EMPNO
----7876
7934
ENAME
---------ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
13 rows selected.
SQL> INSERT INTO Emp(Empno, Ename, Job, MGR, HireDate, Sal, Comm,
Deptno)
2 VALUES(1234, 'SAMPLE01', 'CLERK', 7566, SYSDATE, 2500, NULL, 30);
1 row created.
SQL> BEGIN
2 INSERT INTO Emp(Empno, Ename, Job, MGR, HireDate, Sal, Comm,
Deptno)
3 VALUES(1235, 'SAMPLE02', 'CLERK', 7566, SYSDATE, 2500, NULL, 30);
4 END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for gempno: 1240
Enter value for gename: SAMPLE05
Enter value for gsal: 2000
Enter value for gcomm: NULL
Enter value for gdeptno: 30
Enter value for gmgr: 7566
Enter value for gjob: CLERK
Enter value for ghiredate: 06-JUL-10
1 Record Inserted Successfully...
The Record Inserted is...
1240, SAMPLE05, CLERK, 7566, 06-JUL-10, 2000, , 30
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> SELECT * FROM Emp;
EMPNO
----7839
7698
7782
7566
7499
7844
7900
7521
7902
7369
7788
ENAME
---------KING
BLAKE
CLARK
JONES
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
ANALYST
7566 09-DEC-82 3000
20
EMPNO
----7876
7934
1234
1235
1240
ENAME
---------ADAMS
MILLER
SAMPLE01
SAMPLE02
SAMPLE05
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
CLERK
7566 06-JUL-10 2500
30
CLERK
7566 06-JUL-10 2500
30
CLERK
7566 06-JUL-10 2000
30
16 rows selected.
SQL> DELETE FROM Emp
2 WHERE Empno = 1234;
1 row deleted.
SQL>
2
3
4
SQL>
2
3
4
5
ENAME
JOB
MGR HIREDATE
SAL COMM DEPTNO
---------- --------- ----- --------- ----- ----- -----KING
PRESIDENT
17-NOV-81 5000
10
BLAKE
MANAGER
7839 01-MAY-81 2850
30
CLARK
MANAGER
7839 09-JUN-81 2450
10
JONES
MANAGER
7839 02-APR-81 2975
20
ALLEN
SALESMAN
7698 20-FEB-81 1600
300
30
TURNER
SALESMAN
7698 08-SEP-81 1500
0
30
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7900
7521
7902
7369
7788
EMPNO
----7876
7934
JAMES
WARD
FORD
SMITH
SCOTT
CLERK
SALESMAN
ANALYST
CLERK
ANALYST
7698
7698
7566
7902
7566
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
09-DEC-82
950
1250
3000
800
3000
ENAME
---------ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
500
30
30
20
20
20
13 rows selected.
SQL> UPDATE Emp
2 SET Sal = Sal + 1000
3 WHERE Empno = 7934;
1 row updated.
SQL>
2
3
4
5
6
BEGIN
UPDATE Emp
SET Sal = Sal + 1000
WHERE Empno = 7934;
END;
/
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
DECLARE
V_Empno Emp.Empno%TYPE := &GEmpno;
BEGIN
UPDATE Emp
SET Sal = Sal + 1000
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DECLARE
V_Ename EMP.ENAME%TYPE;
V_Sal EMP.SAL%TYPE;
CURSOR MyCursor IS
SELECT Ename, Sal
FROM EMP;
BEGIN
OPEN MyCursor;
FETCH MyCursor INTO V_Ename, V_Sal;
DBMS_OUTPUT.PUT_LINE(V_Ename||'''s Salary is $ '||V_Sal);
FETCH MyCursor INTO V_Ename, V_Sal;
DBMS_OUTPUT.PUT_LINE(V_Ename||'''s Salary is $ '||V_Sal);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
13 CLOSE MyCursor;
14 END;
15 /
KING's Salary is $ 5000
BLAKE's Salary is $ 2850
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 V_Ename EMP.ENAME%TYPE;
3 V_Sal EMP.SAL%TYPE;
4 CURSOR MyCursor IS
5 SELECT Ename, Sal
6 FROM EMP;
7 BEGIN
8 OPEN MyCursor;
9 FETCH MyCursor INTO V_Ename, V_Sal;
10 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
11 FETCH MyCursor INTO V_Ename, V_Sal;
12 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
13 FETCH MyCursor INTO V_Ename, V_Sal;
14 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
15 FETCH MyCursor INTO V_Ename, V_Sal;
16 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
17 FETCH MyCursor INTO V_Ename, V_Sal;
18 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
19 FETCH MyCursor INTO V_Ename, V_Sal;
20 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
21 FETCH MyCursor INTO V_Ename, V_Sal;
22 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
23 FETCH MyCursor INTO V_Ename, V_Sal;
24 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
25 FETCH MyCursor INTO V_Ename, V_Sal;
26 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
27 FETCH MyCursor INTO V_Ename, V_Sal;
28 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
29 FETCH MyCursor INTO V_Ename, V_Sal;
30 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
31 FETCH MyCursor INTO V_Ename, V_Sal;
32 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
33 FETCH MyCursor INTO V_Ename, V_Sal;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Ename EMP.ENAME%TYPE;
3 V_Sal EMP.SAL%TYPE;
4 CURSOR MyCursor IS
5 SELECT Ename, Sal
6 FROM EMP;
7 BEGIN
8 OPEN MyCursor;
9 FETCH MyCursor INTO V_Ename, V_Sal;
10 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
11 FETCH MyCursor INTO V_Ename, V_Sal;
12 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
13 FETCH MyCursor INTO V_Ename, V_Sal;
14 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
15 FETCH MyCursor INTO V_Ename, V_Sal;
16 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
17 FETCH MyCursor INTO V_Ename, V_Sal;
18 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
19 FETCH MyCursor INTO V_Ename, V_Sal;
20 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
21 FETCH MyCursor INTO V_Ename, V_Sal;
22 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
23 FETCH MyCursor INTO V_Ename, V_Sal;
24 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||'
'||V_Ename||'''s Salary is $ '||V_Sal);
25 FETCH MyCursor INTO V_Ename, V_Sal;
DECLARE
V_Ename EMP.ENAME%TYPE;
V_Sal EMP.SAL%TYPE;
CURSOR MyCursor IS
SELECT Ename, Sal
FROM EMP;
BEGIN
OPEN MyCursor;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2 V_Ename EMP.ENAME%TYPE;
3 V_Sal EMP.SAL%TYPE;
4 CURSOR MyCursor IS
5 SELECT Ename, Sal
6 FROM EMP;
7 BEGIN
8 OPEN MyCursor;
9 FETCH MyCursor INTO V_Ename, V_Sal;
10 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
11 FETCH MyCursor INTO V_Ename, V_Sal;
12 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
13 FETCH MyCursor INTO V_Ename, V_Sal;
14 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
15 FETCH MyCursor INTO V_Ename, V_Sal;
16 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
17 OPEN MyCursor;
18 FETCH MyCursor INTO V_Ename, V_Sal;
19 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
20 FETCH MyCursor INTO V_Ename, V_Sal;
21 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
22 FETCH MyCursor INTO V_Ename, V_Sal;
23 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
24 FETCH MyCursor INTO V_Ename, V_Sal;
25 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
26 FETCH MyCursor INTO V_Ename, V_Sal;
27 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
28 FETCH MyCursor INTO V_Ename, V_Sal;
29 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Ename EMP.ENAME%TYPE;
3 V_Sal EMP.SAL%TYPE;
4 CURSOR MyCursor IS
5 SELECT Ename, Sal
6 FROM EMP;
7 BEGIN
8 OPEN MyCursor;
9 FETCH MyCursor INTO V_Ename, V_Sal;
10 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
11 FETCH MyCursor INTO V_Ename, V_Sal;
12 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
13 FETCH MyCursor INTO V_Ename, V_Sal;
14 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
15 FETCH MyCursor INTO V_Ename, V_Sal;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Ename EMP.ENAME%TYPE;
3 V_Sal EMP.SAL%TYPE;
4 CURSOR MyCursor IS
5 SELECT Ename, Sal
6 FROM EMP;
7 BEGIN
8 OPEN MyCursor;
9 FETCH MyCursor INTO V_Ename, V_Sal;
10 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
11 FETCH MyCursor INTO V_Ename, V_Sal;
12 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
13 FETCH MyCursor INTO V_Ename, V_Sal;
14 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
15 FETCH MyCursor INTO V_Ename, V_Sal;
16 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
17 CLOSE MyCursor;
18 OPEN MyCursor;
19 FETCH MyCursor INTO V_Ename, V_Sal;
20 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
21 FETCH MyCursor INTO V_Ename, V_Sal;
22 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
23 FETCH MyCursor INTO V_Ename, V_Sal;
24 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
25 FETCH MyCursor INTO V_Ename, V_Sal;
26 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
27 FETCH MyCursor INTO V_Ename, V_Sal;
28 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
29 FETCH MyCursor INTO V_Ename, V_Sal;
30 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
31 FETCH MyCursor INTO V_Ename, V_Sal;
32 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
33 FETCH MyCursor INTO V_Ename, V_Sal;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_Ename EMP.ENAME%TYPE;
3 V_Sal EMP.SAL%TYPE;
4 CURSOR MyCursor IS
5 SELECT Ename, Sal
6 FROM EMP;
7 BEGIN
8 OPEN MyCursor;
9 FETCH MyCursor INTO V_Ename, V_Sal;
10 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
11 FETCH MyCursor INTO V_Ename, V_Sal;
12 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
13 FETCH MyCursor INTO V_Ename, V_Sal;
14 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
15 FETCH MyCursor INTO V_Ename, V_Sal;
16 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
17 CLOSE MyCursor;
18 OPEN MyCursor;
19 FETCH MyCursor INTO V_Ename, V_Sal;
20 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
21 FETCH MyCursor INTO V_Ename, V_Sal;
22 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
23 FETCH MyCursor INTO V_Ename, V_Sal;
24 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
25 FETCH MyCursor INTO V_Ename, V_Sal;
26 DBMS_OUTPUT.PUT_LINE('Row Number '||MyCursor%ROWCOUNT||' :
'||V_Ename||'''s Salary is $ '||V_Sal);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4 V_EmpData EmpCursor%ROWTYPE;
5 BEGIN
6 OPEN EmpCursor;
7 LOOP
8 FETCH EmpCursor INTO V_EmpData;
9 EXIT WHEN EmpCursor%NOTFOUND;
10 DBMS_OUTPUT.PUT_LINE(V_EmpData.Ename);
11 END LOOP;
12 CLOSE EmpCursor;
13 END;
14 /
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 CURSOR EmpCursor IS
3 SELECT * FROM Emp;
4 V_EmpData EmpCursor%ROWTYPE;
5 BEGIN
6 OPEN EmpCursor;
7 LOOP
8 EXIT WHEN EmpCursor%NOTFOUND;
9 FETCH EmpCursor INTO V_EmpData;
10 DBMS_OUTPUT.PUT_LINE(V_EmpData.Ename);
11 END LOOP;
12 CLOSE EmpCursor;
13* END;
SQL> /
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SMITH
SCOTT
ADAMS
MILLER
MILLER
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 CURSOR EmpCursor IS
3 SELECT * FROM Emp;
4 V_EmpData EmpCursor%ROWTYPE;
5 BEGIN
6 OPEN EmpCursor;
7 LOOP
8 FETCH EmpCursor INTO V_EmpData;
9 DBMS_OUTPUT.PUT_LINE(V_EmpData.Ename);
10 EXIT WHEN EmpCursor%NOTFOUND;
11 END LOOP;
12 CLOSE EmpCursor;
13* END;
SQL> /
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
MILLER
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
DECLARE
CURSOR EmpCursor IS
SELECT * FROM Emp;
V_EmpData EmpCursor%ROWTYPE;
BEGIN
OPEN EmpCursor;
LOOP
FETCH EmpCursor INTO V_EmpData;
EXIT WHEN EmpCursor%NOTFOUND;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10 DBMS_OUTPUT.PUT_LINE(V_EmpData.Ename);
11 END LOOP;
12 CLOSE EmpCursor;
13* END;
SQL> /
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 CURSOR EmpCursor IS
3 SELECT * FROM Emp;
4 V_EmpData EmpCursor%ROWTYPE;
5 BEGIN
6 OPEN EmpCursor;
7 LOOP
8 FETCH EmpCursor INTO V_EmpData;
9 DBMS_OUTPUT.PUT_LINE('Record Number : '||EmpCursor%ROWCOUNT||'
'||V_EmpData.Ename);
10 EXIT WHEN EmpCursor%NOTFOUND;
11 END LOOP;
12 CLOSE EmpCursor;
13 END;
14 /
Record Number : 1 KING
Record Number : 2 BLAKE
Record Number : 3 CLARK
Record Number : 4 JONES
Record Number : 5 MARTIN
Record Number : 6 ALLEN
Record Number : 7 TURNER
Record Number : 8 JAMES
Record Number : 9 WARD
Record Number : 10 FORD
Record Number : 11 SMITH
Record Number : 12 SCOTT
Record Number : 13 ADAMS
Record Number : 14 MILLER
Record Number : 14 MILLER
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
9 DBMS_OUTPUT.PUT_LINE('
Name
'||' Designation
'||'
Basic Salary
'||'
Annual Salary
');
10 DBMS_OUTPUT.PUT_LINE('
-----'||' ------------'||'
----------'||'
--------------');
11 LOOP
12 FETCH EmpCursor INTO V_EmpData;
13 EXIT WHEN EmpCursor%NOTFOUND;
14
DBMS_OUTPUT.PUT_LINE(RPAD(V_EmpData.Ename, 12)||RPAD(V_EmpData.Job,
12)||LPAD(V_EmpData.Sal, 10)||LPAD(V_EmpData.Sal * 12, 20));
15 END LOOP;
16 CLOSE EmpCursor;
17 END;
18 /
The Details of Employees in Your Organization are as Follows
--------------------------------------------------------------Name
Designation
Basic Salary
Annual Salary
------------------------------------------KING
PRESIDENT
5000
60000
BLAKE
MANAGER
2850
34200
CLARK
MANAGER
2450
29400
JONES
MANAGER
2975
35700
MARTIN
SALESMAN
1250
15000
ALLEN
SALESMAN
1600
19200
TURNER
SALESMAN
1500
18000
JAMES
CLERK
950
11400
WARD
SALESMAN
1250
15000
FORD
ANALYST
3000
36000
SMITH
CLERK
800
9600
SCOTT
ANALYST
3000
36000
ADAMS
CLERK
1100
13200
MILLER
CLERK
1300
15600
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 V_RowCount NUMBER(4);
3 CURSOR EmpCursor IS
4 SELECT *
5 FROM Emp;
6 V_EmpData EmpCursor%ROWTYPE;
7 BEGIN
8 OPEN EmpCursor;
9 DBMS_OUTPUT.PUT_LINE(RPAD('Employees Information', 80));
10 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
11 DBMS_OUTPUT.PUT_LINE(RPAD('EmpNo', 8)|| RPAD('Ename',
12)||RPAD('Job', 12)||RPAD('Deptno', 8)||RPAD('Mgr',
10)||RPAD('Hiredate', 12)||RPAD('Sal', 12)||RPAD('Comm', 10));
12 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
13 LOOP
14 FETCH EmpCursor INTO V_EmpData;
15 EXIT WHEN EmpCursor%NOTFOUND;
16 V_RoWCount := EmpCursor%ROWCOUNT;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
17 DBMS_OUTPUT.PUT_LINE(RPAD(V_EmpData.Empno, 8)
||RPAD(V_EmpData.Ename, 12)||RPAD(V_EmpData.Job,
12)||RPAD(V_EmpData.Deptno, 8)||NVL(TO_CHAR(RPAD(V_EmpData.MGR,
10)),'No Manager')||RPAD(V_EmpData.Hiredate, 12)||RPAD(V_EmpData.Sal,
12)||NVL(TO_CHAR(RPAD(V_EmpData.Comm, 12)),'-NA-'));
18 END LOOP;
19 DBMS_OUTPUT.PUT_LINE(V_RowCount||' Rows Processed So Far...');
20 CLOSE EmpCursor;
21 END;
22 /
Employees Information
------------------------------------------------------------------------------EmpNo
Ename
Job
Deptno Mgr
Hiredate
Sal
Comm
------------------------------------------------------------------------------7839
KING
PRESIDENT
10
No Manager17-NOV-81
5000
-NA7698
BLAKE
MANAGER
30
7839
01-MAY-81
2850
-NA7782
CLARK
MANAGER
10
7839
09-JUN-81
2450
-NA7566
JONES
MANAGER
20
7839
02-APR-81
2975
-NA7654
MARTIN
SALESMAN
30
7698
28-SEP-81
1250
1400
7499
ALLEN
SALESMAN
30
7698
20-FEB-81
1600
300
7844
TURNER
SALESMAN
30
7698
08-SEP-81
1500
0
7900
JAMES
CLERK
30
7698
03-DEC-81
950
-NA7521
WARD
SALESMAN
30
7698
22-FEB-81
1250
500
7902
FORD
ANALYST
20
7566
03-DEC-81
3000
-NA7369
SMITH
CLERK
20
7902
17-DEC-80
800
-NA7788
SCOTT
ANALYST
20
7566
09-DEC-82
3000
-NA7876
ADAMS
CLERK
20
7788
12-JAN-83
1100
-NA7934
MILLER
CLERK
10
7782
23-JAN-82
1300
-NA14 Rows Processed So Far...
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
DECLARE
V_RowCount NUMBER(4);
CURSOR EmpCursor IS
SELECT *
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5 FROM Emp;
6 V_EmpData EmpCursor%ROWTYPE;
7 BEGIN
8 OPEN EmpCursor;
9 DBMS_OUTPUT.PUT_LINE(RPAD('Employees Information', 80));
10 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
11 DBMS_OUTPUT.PUT_LINE(RPAD('Ename', 12)||RPAD('Job',
12)||RPAD('Sal', 12)||RPAD('Comm', 10));
12 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
13 LOOP
14 FETCH EmpCursor INTO V_EmpData;
15 EXIT WHEN EmpCursor%NOTFOUND;
16 V_RoWCount := EmpCursor%ROWCOUNT;
17 IF V_EmpData.Job = 'SALESMAN'
18 THEN
19
DBMS_OUTPUT.PUT_LINE(RPAD(V_EmpData.Ename, 12)||RPAD(V_EmpData.Job,
12)||RPAD(V_EmpData.Sal, 12)||V_EmpData.Comm||' Eligible For
Commission.');
20 ELSE
21
DBMS_OUTPUT.PUT_LINE(RPAD(V_EmpData.Ename, 12)||RPAD(V_EmpData.Job,
12)||RPAD(V_EmpData.Sal, 12)||'Sorry! Not Eligible For Commission.');
22 END IF;
23 END LOOP;
24 DBMS_OUTPUT.PUT_LINE(V_RowCount||' Rows Processed So Far...');
25 CLOSE EmpCursor;
26 END;
27 /
Employees Information
------------------------------------------------------------------------------Ename
Job
Sal
Comm
------------------------------------------------------------------------------KING
PRESIDENT
5000
Sorry! Not Eligible For Commission.
BLAKE
MANAGER
2850
Sorry! Not Eligible For Commission.
CLARK
MANAGER
2450
Sorry! Not Eligible For Commission.
JONES
MANAGER
2975
Sorry! Not Eligible For Commission.
MARTIN
SALESMAN
1250
1400 Eligible For Commission.
ALLEN
SALESMAN
1600
300 Eligible For Commission.
TURNER
SALESMAN
1500
0 Eligible For Commission.
JAMES
CLERK
950
Sorry! Not Eligible For Commission.
WARD
SALESMAN
1250
500 Eligible For Commission.
FORD
ANALYST
3000
Sorry! Not Eligible For Commission.
SMITH
CLERK
800
Sorry! Not Eligible For Commission.
SCOTT
ANALYST
3000
Sorry! Not Eligible For Commission.
ADAMS
CLERK
1100
Sorry! Not Eligible For Commission.
MILLER
CLERK
1300
Sorry! Not Eligible For Commission.
14 Rows Processed So Far...
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1
DECLARE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
DECLARE
V_Job Emp.Job%TYPE := UPPER('&GJob');
V_RowCount NUMBER(4);
CURSOR EmpCursor IS
SELECT *
FROM Emp;
V_EmpData EmpCursor%ROWTYPE;
BEGIN
OPEN EmpCursor;
DBMS_OUTPUT.PUT_LINE(RPAD('Employees Information', 80));
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
11 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
12 DBMS_OUTPUT.PUT_LINE(RPAD('Ename', 12)||RPAD('Job',
12)||RPAD('Sal', 12));
13 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
14 LOOP
15 FETCH EmpCursor INTO V_EmpData;
16 EXIT WHEN EmpCursor%NOTFOUND;
17 V_RoWCount := EmpCursor%ROWCOUNT;
18 IF V_EmpData.Job = V_Job
19 THEN
20
DBMS_OUTPUT.PUT_LINE(RPAD(V_EmpData.Ename, 12)||RPAD(V_EmpData.Job,
12)||RPAD(V_EmpData.Sal, 12));
21 ELSE
22 NULL;
23 END IF;
24 END LOOP;
25 CLOSE EmpCursor;
26* END;
SQL> /
Enter value for gjob: Salesman
Employees Information
------------------------------------------------------------------------------Ename
Job
Sal
------------------------------------------------------------------------------MARTIN
SALESMAN
1250
ALLEN
SALESMAN
1600
TURNER
SALESMAN
1500
WARD
SALESMAN
1250
PL/SQL procedure successfully completed.
SQL> /
Enter value for gjob: Manager
Employees Information
------------------------------------------------------------------------------Ename
Job
Sal
------------------------------------------------------------------------------BLAKE
MANAGER
2850
CLARK
MANAGER
2450
JONES
MANAGER
2975
PL/SQL procedure successfully completed.
SQL> /
Enter value for gjob: Clerk
Employees Information
------------------------------------------------------------------------------Ename
Job
Sal
------------------------------------------------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
JAMES
SMITH
ADAMS
MILLER
CLERK
CLERK
CLERK
CLERK
950
800
1100
1300
29 END;
30 /
Enter value for givejob: CLERK
Details of Employees With CLERK's Designation Are...
-----------------------------------------------------Name
Basic Salary
Annual Salary
------------------------------JAMES
950
11400
SMITH
800
9600
ADAMS
1100
13200
MILLER
1300
15600
The Total Number of CLERK's Are 4 And The Investment is : 4150
PL/SQL procedure successfully completed.
SQL> /
Enter value for givejob: Salesman
Details of Employees With SALESMAN's Designation Are...
-----------------------------------------------------Name
Basic Salary
Annual Salary
------------------------------MARTIN
1250
15000
ALLEN
1600
19200
TURNER
1500
18000
WARD
1250
15000
The Total Number of SALESMAN's Are 4 And The Investment is : 5600
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 CURSOR EmpCursor IS
3 SELECT * FROM Emp;
4 V_EmpData EmpCursor%ROWTYPE;
5 BEGIN
6 OPEN EmpCursor;
7 FETCH EmpCursor INTO V_EmpData;
8 WHILE EmpCursor%FOUND
9 LOOP
10 DBMS_OUTPUT.PUT_LINE(V_EmpData.Ename);
11 FETCH EmpCursor INTO V_EmpData;
12 END LOOP;
13 CLOSE EmpCursor;
14 END;
15 /
KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
FORD
SMITH
SCOTT
ADAMS
MILLER
PL/SQL procedure successfully completed.
SQL> DECLARE
2 CURSOR EmpCursor IS
3 SELECT * FROM Emp;
4 V_EmpData EmpCursor%ROWTYPE;
5 BEGIN
6 OPEN EmpCursor;
7 FETCH EmpCursor INTO V_EmpData;
8 WHILE EmpCursor%FOUND
9 LOOP
10 DBMS_OUTPUT.PUT_LINE('Record Number : '||EmpCursor%ROWCOUNT||'
'||V_EmpData.Ename);
11 FETCH EmpCursor INTO V_EmpData;
12 END LOOP;
13 CLOSE EmpCursor;
14 END;
15 /
Record Number : 1 KING
Record Number : 2 BLAKE
Record Number : 3 CLARK
Record Number : 4 JONES
Record Number : 5 MARTIN
Record Number : 6 ALLEN
Record Number : 7 TURNER
Record Number : 8 JAMES
Record Number : 9 WARD
Record Number : 10 FORD
Record Number : 11 SMITH
Record Number : 12 SCOTT
Record Number : 13 ADAMS
Record Number : 14 MILLER
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 V_RowCount NUMBER(4);
3 CURSOR EmpCursor IS
4 SELECT *
5 FROM Emp;
6 V_EmpData EmpCursor%ROWTYPE;
7 BEGIN
8 OPEN EmpCursor;
9 DBMS_OUTPUT.PUT_LINE(RPAD(LPAD('Employees Information', 49, '*'),
80, '*'));
10 DBMS_OUTPUT.PUT_LINE(RPAD('-', 80,'-'));
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Null?
Type
-------- ------------------NOT NULL NUMBER(4)
VARCHAR2(10)
VARCHAR2(9)
NUMBER(4)
DATE
NUMBER(7,2)
NUMBER(7,2)
NOT NULL NUMBER(2)
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2
TYPE EmpRefCursor
3
IS REF CURSOR;
4
V_EmpRefCursor EmpRefCursor;
5
V_Ename Emp.Ename%TYPE;
6 BEGIN
7
OPEN V_EmpRefCursor
8
FOR
9
SELECT Ename FROM Emp;
10
LOOP
11
FETCH V_EmpRefCursor INTO V_Ename;
12
EXIT WHEN V_EmpRefCursor%NOTFOUND;
13
DBMS_OUTPUT.PUT_LINE('Employee Number
'||TO_CHAR(V_EmpRefCursor%ROWCOUNT, '09')||' : '||V_Ename);
14
END LOOP;
15
CLOSE V_EmpRefCursor;
16 END;
17 /
Employee Number 01 : KING
Employee Number 02 : BLAKE
Employee Number 03 : CLARK
Employee Number 04 : JONES
Employee Number 05 : MARTIN
Employee Number 06 : ALLEN
Employee Number 07 : TURNER
Employee Number 08 : JAMES
Employee Number 09 : WARD
Employee Number 10 : FORD
Employee Number 11 : SMITH
Employee Number 12 : SCOTT
Employee Number 13 : ADAMS
Employee Number 14 : MILLER
PL/SQL procedure successfully completed.
SQL> DECLARE
2
CURSOR EmpRefCursor
3
IS
4
SELECT Ename FROM Emp;
5
V_Ename Emp.Ename%TYPE;
6 BEGIN
7
OPEN EmpRefCursor;
8
LOOP
9
FETCH EmpRefCursor INTO V_Ename;
10
EXIT WHEN EmpRefCursor%NOTFOUND;
11
DBMS_OUTPUT.PUT_LINE('Employee Number
'||TO_CHAR(EmpRefCursor%ROWCOUNT, '09')||' : '||V_Ename);
12
END LOOP;
13
CLOSE EmpRefCursor;
14 END;
15 /
Employee Number 01 : KING
Employee Number 02 : BLAKE
Employee Number 03 : CLARK
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Employee
Employee
Employee
Employee
Employee
Employee
Employee
Employee
Employee
Employee
Employee
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
04
05
06
07
08
09
10
11
12
13
14
:
:
:
:
:
:
:
:
:
:
:
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
SCOTT
ADAMS
MILLER
7698
-NA7782
-NA7566
-NA7654
1400
7499
300
7844
0
7900
-NA7521
500
7902
-NA7369
-NA7788
-NA7876
-NA7934
-NA14 Rows
BLAKE
MANAGER
30
7839
01-MAY-81
2850
CLARK
MANAGER
10
7839
09-JUN-81
2450
JONES
MANAGER
20
7839
02-APR-81
2975
MARTIN
SALESMAN
30
7698
28-SEP-81
1250
ALLEN
SALESMAN
30
7698
20-FEB-81
1600
TURNER
SALESMAN
30
7698
08-SEP-81
1500
JAMES
CLERK
30
7698
03-DEC-81
950
WARD
SALESMAN
30
7698
22-FEB-81
1250
FORD
ANALYST
20
7566
03-DEC-81
3000
SMITH
CLERK
20
7902
17-DEC-80
800
SCOTT
ANALYST
20
7566
09-DEC-82
3000
ADAMS
CLERK
20
7788
12-JAN-83
1100
MILLER
CLERK
10
7782
23-JAN-82
1300
Processed So Far...
35
DBMS_OUTPUT.PUT_LINE(RPAD(V_EmpRecordType.EmpRecord.Empno,
8) ||RPAD(V_EmpRecordType.EmpRecord.Ename,
12)||RPAD(V_EmpRecordType.EmpRecord.Job,
12)||RPAD(V_EmpRecordType.EmpRecord.Deptno,
8)||NVL(TO_CHAR(RPAD(V_EmpRecordType.EmpRecord.MGR, 10)),'No
Manager')||RPAD(V_EmpRecordType.EmpRecord.Hiredate,
12)||RPAD(V_EmpRecordType.EmpRecord.Sal,
12)||NVL(TO_CHAR(RPAD(V_EmpRecordType.EmpRecord.Comm, 12)),'-NA-'));
36
END LOOP;
37
CLOSE V_GenericCursor;
38 DBMS_OUTPUT.PUT_LINE(V_RowCount||' Rows Processed So Far...');
39 END LOOP;
40 END;
41 /
****************************Employees
Information*******************************
------------------------------------------------------------------------------EmpNo
Ename
Job
Deptno Mgr
Hiredate
Sal
Comm
----------------------------------------------------------------------------------------------------------------------------------------------------------Now Printing The Employees of Department : ACCOUNTING
----------------------------------------------------------------------------7839
KING
PRESIDENT
10
No Manager17-NOV-81
5000
-NA7782
CLARK
MANAGER
10
7839
09-JUN-81
2450
-NA7934
MILLER
CLERK
10
7782
23-JAN-82
1300
-NA3 Rows Processed So Far...
----------------------------------------------------------------------------Now Printing The Employees of Department : RESEARCH
----------------------------------------------------------------------------7566
JONES
MANAGER
20
7839
02-APR-81
2975
-NA7902
FORD
ANALYST
20
7566
03-DEC-81
3000
-NA7369
SMITH
CLERK
20
7902
17-DEC-80
800
-NA7788
SCOTT
ANALYST
20
7566
09-DEC-82
3000
-NA7876
ADAMS
CLERK
20
7788
12-JAN-83
1100
-NA5 Rows Processed So Far...
----------------------------------------------------------------------------Now Printing The Employees of Department : SALES
----------------------------------------------------------------------------Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
7698
BLAKE
MANAGER
30
7839
01-MAY-81
2850
-NA7654
MARTIN
SALESMAN
30
7698
28-SEP-81
1250
1400
7499
ALLEN
SALESMAN
30
7698
20-FEB-81
1600
300
7844
TURNER
SALESMAN
30
7698
08-SEP-81
1500
0
7900
JAMES
CLERK
30
7698
03-DEC-81
950
-NA7521
WARD
SALESMAN
30
7698
22-FEB-81
1250
500
6 Rows Processed So Far...
----------------------------------------------------------------------------Now Printing The Employees of Department : OPERATIONS
----------------------------------------------------------------------------0 Rows Processed So Far...
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 CURSOR EmpCursor
3 IS
4 SELECT Ename, Sal
5 FROM Emp;
6 TYPE EmpCursorTableType
7 IS TABLE OF
8 EmpCursor%ROWTYPE
9 INDEX BY BINARY_INTEGER;
10 V_EmpTableType EmpCursorTableType;
11 BEGIN
12 IF NOT EmpCursor%ISOPEN
13 THEN
14 OPEN EmpCursor;
15 ELSE
16 DBMS_OUTPUT.PUT_LINE('Cursor is Already Open Proceed With Result
Set Operation''s.');
17 END IF;
18 DECLARE
19 V_TableIndex PLS_INTEGER := 0;
20 BEGIN
21 DBMS_OUTPUT.PUT_LINE('Loading The Data From Context Area into
PL/SQL Tables Please Wait...');
22 LOOP
23 FETCH EmpCursor INTO V_EmpTableType(V_TableIndex).Ename,
V_EmpTableType(V_TableIndex).Sal;
24 EXIT WHEN EmpCursor%NOTFOUND OR EmpCursor%NOTFOUND IS NULL;
25 V_TableIndex := V_TableIndex + 1;
26 END LOOP;
27 DBMS_OUTPUT.PUT_LINE('Loading The Data into PL/SQL Tables is Done
Successfully...');
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
28 END;
29 BEGIN
30 DBMS_OUTPUT.PUT_LINE('Displaying The Data From The Pl/SQL
Table...Please Wait...');
31 FOR IndexVariable IN V_EmpTableType.FIRST .. V_EmpTableType.LAST
32 LOOP
33 DBMS_OUTPUT.PUT_LINE(V_EmpTableType(IndexVariable).Ename || ' is
Fixed With A Salary of ' || V_EmpTableType(IndexVariable).Sal);
34 END LOOP;
35 DBMS_OUTPUT.PUT_LINE('Displaying The Data From The Pl/SQL Table
Was Sucessfull...');
36 DBMS_OUTPUT.PUT_LINE('The Total Records Processed Are
'||V_EmpTableType.COUNT);
37 END;
38 END;
39 /
Loading The Data From Context Area into PL/SQL Tables Please Wait...
Loading The Data into PL/SQL Tables is Done Successfully...
Displaying The Data From The Pl/SQL Table...Please Wait...
KING is Fixed With A Salary of 5000
BLAKE is Fixed With A Salary of 2850
CLARK is Fixed With A Salary of 2450
JONES is Fixed With A Salary of 2975
MARTIN is Fixed With A Salary of 1250
ALLEN is Fixed With A Salary of 1600
TURNER is Fixed With A Salary of 1500
JAMES is Fixed With A Salary of 950
WARD is Fixed With A Salary of 1250
FORD is Fixed With A Salary of 3000
SMITH is Fixed With A Salary of 800
SCOTT is Fixed With A Salary of 3000
ADAMS is Fixed With A Salary of 1100
MILLER is Fixed With A Salary of 1300
Displaying The Data From The Pl/SQL Table Was Sucessfull...
The Total Records Processed Are 14
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 TYPE EmpTableType
3 IS TABLE OF
4 Emp%ROWTYPE;
5 V_EmpTableType EmpTableType;
6 BEGIN
7 SELECT *
8 BULK COLLECT INTO V_EmpTableType
9 FROM Emp;
10 FOR IndexVariable IN V_EmpTableType.FIRST .. V_EmpTableType.LAST
11 LOOP
12 DBMS_OUTPUT.PUT_LINE(V_EmpTableType(IndexVariable).Ename || ' is
Fixed With A Salary of ' || V_EmpTableType(IndexVariable).Sal);
13 END LOOP;
14 END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
15 /
KING is Fixed With A Salary of 5000
BLAKE is Fixed With A Salary of 2850
CLARK is Fixed With A Salary of 2450
JONES is Fixed With A Salary of 2975
MARTIN is Fixed With A Salary of 1250
ALLEN is Fixed With A Salary of 1600
TURNER is Fixed With A Salary of 1500
JAMES is Fixed With A Salary of 950
WARD is Fixed With A Salary of 1250
FORD is Fixed With A Salary of 3000
SMITH is Fixed With A Salary of 800
SCOTT is Fixed With A Salary of 3000
ADAMS is Fixed With A Salary of 1100
MILLER is Fixed With A Salary of 1300
PL/SQL procedure successfully completed.
SQL> DECLARE
2 TYPE MyArray IS
3 TABLE OF
4 Emp%ROWTYPE;
5 V_MyArray MyArray;
6 TYPE GenericCursor
7 IS REF CURSOR;
8 V_GenericCursor GenericCursor;
9 BEGIN
10 OPEN V_GenericCursor FOR
11 SELECT *
12 FROM Emp;
13 FETCH V_GenericCursor BULK COLLECT INTO V_MyArray;
14 CLOSE V_GenericCursor;
15 FOR LoopIndex IN 1 .. V_MyArray.Count
16 LOOP
17 DBMS_OUTPUT.PUT_LINE( TO_CHAR(LoopIndex, '09') || ') ' ||
V_MyArray(LoopIndex).Ename );
18 END LOOP;
19 END;
20 /
01) KING
02) BLAKE
03) CLARK
04) JONES
05) MARTIN
06) ALLEN
07) TURNER
08) JAMES
09) WARD
10) FORD
11) SMITH
12) SCOTT
13) ADAMS
14) MILLER
PL/SQL procedure successfully completed.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
DECLARE
V_Empno Emp.Empno%TYPE := &Empno;
V_Ename Emp.Ename%TYPE;
V_Sal Emp.Sal%TYPE;
BEGIN
SELECT Ename, Sal INTO V_Ename, V_Sal
FROM Emp
WHERE Empno = V_Empno;
DBMS_OUTPUT.PUT_LINE('Name : '||V_Ename||' Salary : '||V_Sal);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('Sorry, Data is Not Found.');
END;
/
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2
V_Emp Emp%ROWTYPE;
3
V_Sal Emp.Sal%TYPE := &Sal;
4 BEGIN
5
SELECT * INTO V_Emp
6
FROM Emp
7
WHERE Sal = V_Sal;
8
DBMS_OUTPUT.PUT_LINE('Name : '||V_Emp.Ename||' Salary : '||V_Emp.Sal);
9
EXCEPTION
10
WHEN TOO_MANY_ROWS THEN
11
DBMS_OUTPUT.PUT_LINE('More Than One Employee Having Same Salary');
12 END ;
13 /
Enter value for sal: 3000
More Than One Employee Having Same Salary
PL/SQL procedure successfully completed.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for sal: 1234
DECLARE
*
ERROR at line 1:
ORA-01403: no data found
ORA-06512: at line 5
SQL> DECLARE
2
V_Emp Emp%ROWTYPE;
3
V_Sal Emp.Sal%TYPE := &Sal;
4 BEGIN
5
SELECT * INTO V_Emp
6
FROM Emp
7
WHERE Sal = V_Sal;
8
DBMS_OUTPUT.PUT_LINE('Name : '||V_Emp.Ename||' Salary : '||V_Emp.Sal);
9
EXCEPTION
10
WHEN TOO_MANY_ROWS THEN
11
DBMS_OUTPUT.PUT_LINE('More Than One Employee Having Same Salary');
12
WHEN NO_DATA_FOUND THEN
13 DBMS_OUTPUT.PUT_LINE('Sorry, Data is Not Found.');
14 END ;
15 /
Enter value for sal: 3000
More Than One Employee Having Same Salary
PL/SQL procedure successfully completed.
SQL> /
Enter value for sal: 1234
Sorry, Data is Not Found.
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2
V_Empno VARCHAR2(4):='&Empno';
3
V_Ename VARCHAR2(20):='&Ename';
4
V_Deptno VARCHAR2(2):='&Deptno';
5 BEGIN
6
INSERT INTO Emp(Empno,Ename,Deptno)
7
VALUES (V_Empno,V_Ename,V_Deptno);
8 EXCEPTION
9
WHEN INVALID_NUMBER THEN
10
DBMS_OUTPUT.PUT_LINE('Given Employee Number or Department Number is
Invalid');
11 END ;
12 /
Enter value for empno: 1234
Enter value for ename: SAMPLE
Enter value for deptno: 30
PL/SQL procedure successfully completed.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for empno: 123A
Enter value for ename: SAMPLE
Enter value for deptno: 30
Given Employee Number or Department Number is Invalid
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> DECLARE
2
V_Num1 NUMBER;
3 BEGIN
4
V_Num1 := '&GiveNumber1' + '&GiveNumber2';
5
DBMS_OUTPUT.PUT_LINE ('The Result of the Operation is: ' || V_Num1);
6 EXCEPTION
7
WHEN VALUE_ERROR THEN
8
DBMS_OUTPUT.PUT_LINE ('Please Check - There is a Source of Invalid
Values in your input (OR) Operations.');
9 END ;
10 /
Enter value for givenumber1: 1234
Enter value for givenumber2: 2345
The Result of the Operation is: 3579
PL/SQL procedure successfully completed.
SQL> /
Enter value for givenumber1: 123A
Enter value for givenumber2: 2345
Please Check - There is a Source of Invalid Values in your input (OR)
Operations.
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2
V_Num1 NUMBER;
3 BEGIN
4
V_Num1 := '&GiveNumber1' + '&GiveNumber2';
5
DBMS_OUTPUT.PUT_LINE ('The Result of the Operation is: ' || V_Num1);
6 EXCEPTION
7
WHEN INVALID_NUMBER THEN
8
DBMS_OUTPUT.PUT_LINE ('Please Check - There is a Source of Invalid
Values in your input (OR) Operations.');
9* END ;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for givenumber1: 123A
Enter value for givenumber2: 2345
DECLARE
*
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error: character to number conversion error
ORA-06512: at line 4
SQL> ROLBACK;
SP2-0042: unknown command "ROLBACK" - rest of line ignored.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> DECLARE
2
V_Empno Emp.Empno%TYPE := &Empno;
3
V_Ename Emp.Ename%TYPE := '&Ename';
4
V_Deptno Emp.Deptno%TYPE := &Deptno;
5 BEGIN
6
INSERT INTO Emp(Empno,Ename,Deptno)
7
VALUES (V_Empno,V_Ename,V_Deptno);
8
DBMS_OUTPUT.PUT_LINE('Employee Successfully Inserted');
9 END ;
10 /
Enter value for empno: 7654
Enter value for ename: SAMPLE
Enter value for deptno: 30
DECLARE
*
ERROR at line 1:
ORA-00001: unique constraint (SCOTT.EMP_PRIMARY_KEY) violated
ORA-06512: at line 6
SQL> DECLARE
2
V_Empno Emp.Empno%TYPE := &Empno;
3
V_Ename Emp.Ename%TYPE := '&Ename';
4
V_Deptno Emp.Deptno%TYPE := &Deptno;
5 BEGIN
6
INSERT INTO Emp(Empno,Ename,Deptno)
7
VALUES (V_Empno,V_Ename,V_Deptno);
8
DBMS_OUTPUT.PUT_LINE('Employee Successfully Inserted');
9 EXCEPTION
10
WHEN DUP_VAL_ON_INDEX THEN
11
DBMS_OUTPUT.PUT_LINE('Employee ID Already Exists');
12 END ;
13 /
Enter value for empno: 1234
Enter value for ename: SAMPLE
Enter value for deptno: 30
Employee Successfully Inserted
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
is 950
Employee Name
is 2975
Employee Name
is 5000
Employee Name
is 1250
Employee Name
is 1300
Employee Name
is 3000
Employee Name
is 800
Employee Name
is 1500
Employee Name
is 1250
The Requested
with Excellent
with Very Good
with Good Grade');
with Fair Grade');
with Poor Grade');
SQL> cl scr
SQL> DECLARE
2
V_Num1 NUMBER := &GiveNumber1;
3
V_Num2 NUMBER := &GiveNumber2;
4
V_Result NUMBER;
5 BEGIN
6
V_Result := V_Num1/V_Num2;
7
DBMS_OUTPUT.PUT_LINE ('The Result is: ' || V_Result);
8 EXCEPTION
9
WHEN ZERO_DIVIDE THEN
10
DBMS_OUTPUT.PUT_LINE ('Fatal Error - Division by zero occurred');
11 END ;
12 /
Enter value for givenumber1: 25
Enter value for givenumber2: 5
The Result is: 5
PL/SQL procedure successfully completed.
SQL> /
Enter value for givenumber1: 25
Enter value for givenumber2: 0
Fatal Error - Division by zero occurred
PL/SQL procedure successfully completed.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2
V_Num1 NUMBER := &GiveNumber1;
3
V_Num2 NUMBER := &GiveNumber2;
4
V_Result NUMBER;
5 BEGIN
6
V_Result := V_Num1/V_Num2;
7
DBMS_OUTPUT.PUT_LINE ('The Result is: ' || V_Result);
8* END ;
SQL> /
Enter value for givenumber1: 25
Enter value for givenumber2: 0
DECLARE
*
ERROR at line 1:
ORA-01476: divisor is equal to zero
ORA-06512: at line 6
SQL> cl scr
SQL> ROLLBACk;
Rollback complete.
SQL>
2
3
4
5
Table created.
SQL> SELECT * FROM Messages;
no rows selected
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=102
)
1
SQL> DECLARE
2
V_Ename Emp.Ename%TYPE;
3
V_Sal Emp.Sal%TYPE := &Sal;
4
BEGIN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
5
SELECT Ename INTO V_Ename
6
FROM Emp
7
WHERE Sal = V_Sal;
8
INSERT INTO Messages(Results)
9
VALUES(USER||' Queried for Salary of '||V_Sal||' and '||V_Ename||' was
Found.');
10 EXCEPTION
11
WHEN NO_DATA_FOUND THEN
12
INSERT INTO Messages(Results)
13
VALUES(USER||' Queried For '||V_Sal||' Salary on '||TO_CHAR(SYSDATE,'DD,
Month YYYY, HH24:MI:SS')||' And The Requested Salary Was Not Found.');
14 WHEN TOO_MANY_ROWS THEN
15
INSERT INTO Messages(Results)
16
VALUES(USER||' Queried For '||V_Sal||' Salary on
'||TO_CHAR(SYSDATE,'FMDD, Month YYYY, HH24:MI:SS')||' And Many Records Were
Matching Upon That Salary Hence Query Failed To Retrieve The Data.');
17 WHEN OTHERS THEN
18 INSERT INTO Messages(Results)
19
VALUES(USER||' Executed For Some Data '||TO_CHAR(SYSDATE,'FMDD, Month
YYYY, HH24:MI:SS')||' And Administrators Attention is Expected.');
20 END ;
21 /
Enter value for sal: 800
PL/SQL procedure successfully completed.
SQL> /
Enter value for sal: 5000
PL/SQL procedure successfully completed.
SQL> /
Enter value for sal: 3000
PL/SQL procedure successfully completed.
SQL> /
Enter value for sal: 1234
PL/SQL procedure successfully completed.
SQL> /
Enter value for sal: 1250
PL/SQL procedure successfully completed.
SQL> SELECT * FROM Messages;
RESULTS
-------------------------------------------------------------------------------SCOTT Queried for Salary of 800 and SMITH was Found.
SCOTT Queried for Salary of 5000 and KING was Found.
SCOTT Queried For 3000 Salary on 12, July 2010, 10:57:27 And Many Records Were M
atching Upon That Salary Hence Query Failed To Retrieve The Data.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT Queried For 1250 Salary on 12, July 2010, 10:57:43 And Many Records Were M
atching Upon That Salary Hence Query Failed To Retrieve The Data.
Execution Plan
---------------------------------------------------------0
SELECT STATEMENT Optimizer=ALL_ROWS (Cost=3 Card=5 Bytes=510
)
1
20
DBMS_OUTPUT.PUT_LINE('The Total Number of Employees Working in Department
'||V_Deptno||' are '||V_Staff||'.');
21
EXCEPTION
22
WHEN VALUE_ERROR OR INVALID_NUMBER THEN
23
DBMS_OUTPUT.PUT_LINE('There is some Error in the Data inputs (OR) Data
outputs, Please Check, Debug the Source.');
24
END;
25 EXCEPTION
26 WHEN NO_DATA_FOUND THEN
27 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
28 END;
29 /
Enter value for giveempno: 7654
The Employee Name is :MARTIN Working for Department 30 Having Salary of 1250.
The Total Number of Employees Working in Department 30 are 7.
PL/SQL procedure successfully completed.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Job)
2 VALUES(1235, 'SAMPLE02', 30, 'CLERK');
1 row created.
SQL> DECLARE
2 V_Ename Emp.Ename%TYPE;
3 V_Sal Emp.Sal%TYPE;
4 V_Job Emp.Job%TYPE;
5 V_Deptno Emp.Deptno%TYPE;
6 BEGIN
7 SELECT Ename, Sal, Job, Deptno
8 INTO
9 V_Ename, V_Sal, V_Job, V_Deptno
10 FROM Emp
11 WHERE Empno = &GiveEmpNo;
12 DBMS_OUTPUT.PUT_LINE('The Employee Name is :'||V_Ename||' Working for
Department '||V_Deptno||' Having Salary of '||V_Sal||'.');
13
DECLARE
14
V_Staff NUMBER(1);
15
BEGIN
16
SELECT COUNT(*)
17
INTO V_Staff
18
FROM Emp
19
WHERE Deptno = V_Deptno;
20
DBMS_OUTPUT.PUT_LINE('The Total Number of Employees Working in Department
'||V_Deptno||' are '||V_Staff||'.');
21
EXCEPTION
22
WHEN VALUE_ERROR OR INVALID_NUMBER THEN
23
DBMS_OUTPUT.PUT_LINE('There is some Error in the Data inputs (OR) Data
outputs, Please Check, Debug the Source.');
24
END;
25 EXCEPTION
26 WHEN NO_DATA_FOUND THEN
27 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
28 END;
29 /
Enter value for giveempno: 7654
The Employee Name is :MARTIN Working for Department 30 Having Salary of 1250.
The Total Number of Employees Working in Department 30 are 8.
PL/SQL procedure successfully completed.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Job)
2 VALUES(1236, 'SAMPLE03', 30, 'CLERK');
1 row created.
SQL> DECLARE
2 V_Ename Emp.Ename%TYPE;
3 V_Sal Emp.Sal%TYPE;
4 V_Job Emp.Job%TYPE;
5 V_Deptno Emp.Deptno%TYPE;
6 BEGIN
7 SELECT Ename, Sal, Job, Deptno
8 INTO
9 V_Ename, V_Sal, V_Job, V_Deptno
10 FROM Emp
11 WHERE Empno = &GiveEmpNo;
12 DBMS_OUTPUT.PUT_LINE('The Employee Name is :'||V_Ename||' Working for
Department '||V_Deptno||' Having Salary of '||V_Sal||'.');
13
DECLARE
14
V_Staff NUMBER(1);
15
BEGIN
16
SELECT COUNT(*)
17
INTO V_Staff
18
FROM Emp
19
WHERE Deptno = V_Deptno;
20
DBMS_OUTPUT.PUT_LINE('The Total Number of Employees Working in Department
'||V_Deptno||' are '||V_Staff||'.');
21
EXCEPTION
22
WHEN VALUE_ERROR OR INVALID_NUMBER THEN
23
DBMS_OUTPUT.PUT_LINE('There is some Error in the Data inputs (OR) Data
outputs, Please Check, Debug the Source.');
24
END;
25 EXCEPTION
26 WHEN NO_DATA_FOUND THEN
27 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
28 END;
29 /
Enter value for giveempno: 7654
The Employee Name is :MARTIN Working for Department 30 Having Salary of 1250.
The Total Number of Employees Working in Department 30 are 9.
PL/SQL procedure successfully completed.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Job)
2 VALUES(1237, 'SAMPLE04', 30, 'CLERK');
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL> DECLARE
2 V_Ename Emp.Ename%TYPE;
3 V_Sal Emp.Sal%TYPE;
4 V_Job Emp.Job%TYPE;
5 V_Deptno Emp.Deptno%TYPE;
6 BEGIN
7 SELECT Ename, Sal, Job, Deptno
8 INTO
9 V_Ename, V_Sal, V_Job, V_Deptno
10 FROM Emp
11 WHERE Empno = &GiveEmpNo;
12 DBMS_OUTPUT.PUT_LINE('The Employee Name is :'||V_Ename||' Working for
Department '||V_Deptno||' Having Salary of '||V_Sal||'.');
13
DECLARE
14
V_Staff NUMBER(1);
15
BEGIN
16
SELECT COUNT(*)
17
INTO V_Staff
18
FROM Emp
19
WHERE Deptno = V_Deptno;
20
DBMS_OUTPUT.PUT_LINE('The Total Number of Employees Working in Department
'||V_Deptno||' are '||V_Staff||'.');
21
EXCEPTION
22
WHEN VALUE_ERROR OR INVALID_NUMBER THEN
23
DBMS_OUTPUT.PUT_LINE('There is some Error in the Data inputs (OR) Data
outputs, Please Check, Debug the Source.');
24
END;
25 EXCEPTION
26 WHEN NO_DATA_FOUND THEN
27 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
28 END;
29 /
Enter value for giveempno: 7654
The Employee Name is :MARTIN Working for Department 30 Having Salary of 1250.
There is some Error in the Data inputs (OR) Data outputs, Please Check, Debug
the Source.
PL/SQL procedure successfully completed.
SQL> ROLLBACK;
Rollback complete.
SQL>
2
3
4
5
6
7
8
9
DECLARE
V_Ename Emp.Ename%TYPE;
V_Sal Emp.Sal%TYPE;
V_Job Emp.Job%TYPE;
V_Deptno Emp.Deptno%TYPE;
BEGIN
SELECT Ename, Sal, Job, Deptno
INTO
V_Ename, V_Sal, V_Job, V_Deptno
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
10 FROM Emp
11 WHERE Empno = &GiveEmpNo;
12 DBMS_OUTPUT.PUT_LINE('The Employee Name is :'||V_Ename||' Working for
Department '||V_Deptno||' Having Salary of '||V_Sal||'.');
13
DECLARE
14
V_Staff NUMBER(1);
15
BEGIN
16
SELECT COUNT(*)
17
INTO V_Staff
18
FROM Emp
19
WHERE Deptno = V_Deptno;
20
DBMS_OUTPUT.PUT_LINE('The Total Number of Employees Working in Department
'||V_Deptno||' are '||V_Staff||'.');
21
EXCEPTION
22
WHEN VALUE_ERROR OR INVALID_NUMBER THEN
23
DBMS_OUTPUT.PUT_LINE('There is some Error in the Data inputs (OR) Data
outputs, Please Check, Debug the Source.');
24
END;
25 EXCEPTION
26 WHEN NO_DATA_FOUND THEN
27 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
28 END;
29 /
Enter value for giveempno: 7654
The Employee Name is :MARTIN Working for Department 30 Having Salary of 1250.
The Total Number of Employees Working in Department 30 are 6.
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 E_EmpRemaining EXCEPTION;
3 PRAGMA EXCEPTION_INIT(E_EmpRemaining, -2292);
4 V_Deptno Emp.Deptno%TYPE := &GiveDeptno;
5 BEGIN
6 DELETE FROM Dept
7 WHERE Deptno = V_Deptno;
8 IF SQL%NOTFOUND THEN
9 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
10 END IF;
11 ROLLBACK;
12 END;
13 /
Enter value for givedeptno: 40
PL/SQL procedure successfully completed.
SQL> /
Enter value for givedeptno: 30
DECLARE
*
ERROR at line 1:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2 E_EmpRemaining EXCEPTION;
3 PRAGMA EXCEPTION_INIT(E_EmpRemaining, -2292);
4 V_Deptno Emp.Deptno%TYPE := &GiveDeptno;
5 BEGIN
6 DELETE FROM Dept
7 WHERE Deptno = V_Deptno;
8 IF SQL%NOTFOUND THEN
9 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
10 END IF;
11 ROLLBACK;
12 EXCEPTION
13 WHEN E_EmpRemaining THEN
14 DBMS_OUTPUT.PUT_LINE('Unable to Delete the Department Number '||V_Deptno||'
as the Employees are Existing. Validate Your Relations and then Try Once
Again.');
15 WHEN NO_DATA_FOUND THEN
16 DBMS_OUTPUT.PUT_LINE('The Given Information is Missing in the Database,
Check for Proper Values.');
17 END;
18 /
Enter value for givedeptno: 30
Unable to Delete the Department Number 30 as the Employees are Existing.
Validate Your Relations and then Try Once Again.
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 E_EmpExists EXCEPTION;
3 V_Count NUMBER(2);
4 V_SalSum NUMBER(6);
5 PRAGMA EXCEPTION_INIT(E_EmpExists, -2292);
6 V_Empno Emp.Empno%TYPE := &GiveEmpno;
7 BEGIN
8 DELETE FROM Emp
9 WHERE Empno = V_Empno;
10 IF SQL%NOTFOUND THEN
11 DBMS_OUTPUT.PUT_LINE('The Given Employee Number '||V_Empno||' is Missing in
the Database, Check for Proper Values.');
12 ROLLBACK;
13 ELSE
14 COMMIT;
15 END IF;
16 EXCEPTION
17 WHEN E_EmpExists THEN
SQL>
2
3
4
Table altered.
SQL> cl scr
SQL> DECLARE
2 E_NotNULLViolation EXCEPTION;
3 PRAGMA EXCEPTION_INIT(E_NotNULLViolation, -1400);
4 E_CheckViolation EXCEPTION;
5 PRAGMA EXCEPTION_INIT(E_CheckViolation, -2290);
6 BEGIN
7 INSERT INTO Emp(Empno, Ename, Job, Sal, Comm, Deptno)
8 VALUES(&Empno, '&Ename', '&Job', 25000, NULL, &Deptno);
9 COMMIT;
10 EXCEPTION
11 WHEN E_CheckViolation THEN
12 DBMS_OUTPUT.PUT_LINE('A Field with Check Constraint is not Attended
Properly, Please Check Properly.');
13 WHEN E_NotNULLViolation THEN
14 DBMS_OUTPUT.PUT_LINE('A Field which Cannot be NULL, is not attended, Please
Check Properly.');
15 END;
16 /
Enter value for empno: 1235
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for deptno: 30
PL/SQL procedure successfully completed.
SQL> /
Enter value for empno: 1236
Enter value for ename: Sample
Enter value for job: CLERK
Enter value for deptno: 30
A Field with Check Constraint is not Attended Properly, Please Check Properly.
PL/SQL procedure successfully completed.
SQL> /
Enter value for empno: NULL
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for deptno: 30
A Field which Cannot be NULL, is not attended, Please Check Properly.
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2 E_NoData EXCEPTION;
3 V_Empno Emp.Empno%TYPE := &GEmpno;
4 V_Ename Emp.Ename%TYPE;
5 BEGIN
6 SELECT Ename INTO V_Ename
7 FROM Emp
8 WHERE Empno = V_Empno;
9 DBMS_OUTPUT.PUT_LINE('The Employee : '||V_Ename);
10 EXCEPTION
11 WHEN NO_DATA_FOUND THEN
12 DBMS_OUTPUT.PUT_LINE('Sorry! Data Not Found');
13 END;
14 /
Enter value for gempno: 7839
The Employee : KING
PL/SQL procedure successfully completed.
SQL> /
Enter value for gempno: 2345
Sorry! Data Not Found
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 E_NoData EXCEPTION;
3 PRAGMA EXCEPTION_INIT(E_NoData, -1403);
4 V_Empno Emp.Empno%TYPE := &GEmpno;
5 V_Ename Emp.Ename%TYPE;
6 BEGIN
7 SELECT Ename INTO V_Ename
8 FROM Emp
9 WHERE Empno = V_Empno;
10 DBMS_OUTPUT.PUT_LINE('The Employee : '||V_Ename);
11 EXCEPTION
12 WHEN E_NoData THEN
13 DBMS_OUTPUT.PUT_LINE('Sorry! Data Not Found');
14* END;
SQL> /
Enter value for gempno: 2345
E_NoData EXCEPTION;
*
ERROR at line 2:
ORA-06550: line 2, column 1:
PLS-00701: illegal ORACLE error number -1403 for PRAGMA EXCEPTION_INIT
SQL> EDED
SP2-0042: unknown command "EDED" - rest of line ignored.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 DECLARE
2 E_NoData EXCEPTION;
3 PRAGMA EXCEPTION_INIT(E_NoData, +100);
4 V_Empno Emp.Empno%TYPE := &GEmpno;
5 V_Ename Emp.Ename%TYPE;
6 BEGIN
7 SELECT Ename INTO V_Ename
8 FROM Emp
9 WHERE Empno = V_Empno;
10 DBMS_OUTPUT.PUT_LINE('The Employee : '||V_Ename);
11 EXCEPTION
12 WHEN E_NoData THEN
13 DBMS_OUTPUT.PUT_LINE('Sorry! Data Not Found');
14* END;
SQL> /
Enter value for gempno: 2345
Sorry! Data Not Found
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 V_ErrorCode NUMBER(6);
3 V_ErrorMessage VARCHAR2(200);
4 BEGIN
5 INSERT INTO Dept
6 VALUES(&DeptNumber, '&DeptName', '&DeptLocation');
7 EXCEPTION
8 WHEN OTHERS THEN
9 V_ErrorCode := SQLCODE;
10 V_ErrorMessage := SUBSTR(SQLERRM, 1, 200);
11 DBMS_OUTPUT.PUT_LINE('The Error Code Traced is : '||V_ErrorCode);
12 DBMS_OUTPUT.PUT_LINE('The Error Message Traced is : '||V_ErrorMessage);
13 END;
14 /
Enter value for deptnumber: 50
Enter value for deptname: SHIPPING
Enter value for deptlocation: CHENNAI
PL/SQL procedure successfully completed.
SQL> /
Enter value for deptnumber: 50
Enter value for deptname: SHIPPING
Enter value for deptlocation: CHENNAI
The Error Code Traced is : -1
The Error Message Traced is : ORA-00001: unique constraint
(SCOTT.DEPT_PRIMARY_KEY) violated
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 DECLARE
2 V_ErrorCode NUMBER(6);
3 V_ErrorMessage VARCHAR2(200);
4 BEGIN
5 INSERT INTO Dept
6 VALUES(&DeptNumber, '&DeptName', '&DeptLocation');
7 EXCEPTION
8 WHEN DUP_VAL_ON_INDEX THEN
9 DBMS_OUTPUT.PUT_LINE('Sorry Department Number Cannot Be Duplicated');
10 WHEN OTHERS THEN
11 V_ErrorCode := SQLCODE;
12 V_ErrorMessage := SUBSTR(SQLERRM, 1, 200);
13 DBMS_OUTPUT.PUT_LINE('The Error Code Traced is : '||V_ErrorCode);
14 DBMS_OUTPUT.PUT_LINE('The Error Message Traced is : '||V_ErrorMessage);
15* END;
SQL> /
Enter value for deptnumber: 50
Enter value for deptname: SHIPPING
Enter value for deptlocation: CHENNAI
Sorry Department Number Cannot Be Duplicated
PL/SQL procedure successfully completed.
SQL> /
Enter value for deptnumber: NULL
Enter value for deptname: CARGO
Enter value for deptlocation: DELHI
The Error Code Traced is : -1400
The Error Message Traced is : ORA-01400: cannot insert NULL into
("SCOTT"."DEPT"."DEPTNO")
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19*
DECLARE
E_NullDept EXCEPTION;
PRAGMA EXCEPTION_INIT(E_NullDept, -1400);
V_ErrorCode NUMBER(6);
V_ErrorMessage VARCHAR2(200);
BEGIN
INSERT INTO Dept
VALUES(&DeptNumber, '&DeptName', '&DeptLocation');
EXCEPTION
WHEN E_NullDept THEN
DBMS_OUTPUT.PUT_LINE('Department Number Cannot Be Null');
WHEN DUP_VAL_ON_INDEX THEN
DBMS_OUTPUT.PUT_LINE('Sorry Department Number Cannot Be Duplicated');
WHEN OTHERS THEN
V_ErrorCode := SQLCODE;
V_ErrorMessage := SUBSTR(SQLERRM, 1, 200);
DBMS_OUTPUT.PUT_LINE('The Error Code Traced is : '||V_ErrorCode);
DBMS_OUTPUT.PUT_LINE('The Error Message Traced is : '||V_ErrorMessage);
END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for deptnumber: NULL
Enter value for deptname: CARGO
Enter value for deptlocation: DELHI
Department Number Cannot Be Null
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
5
6
7
Table created.
SQL>
2
3
4
5
6
7
Table created.
SQL> BEGIN
2 INSERT INTO Dept
3 VALUES(&DeptNumber, '&DeptName', '&DeptLocation');
4 COMMIT;
5 INSERT INTO MyAudit(UserName, ModDate)
6 VALUES(USER, SYSDATE);
7 COMMIT;
8 EXCEPTION
9 WHEN OTHERS THEN
10
DECLARE
11
V_ErrorCode NUMBER(6);
12
V_ErrorMessage VARCHAR2(200);
13
BEGIN
14
V_ErrorCode := SQLCODE;
15
V_ErrorMessage := SUBSTR(SQLERRM, 1, 200);
16
DBMS_OUTPUT.PUT_LINE('The Error Code Traced is : '||V_ErrorCode);
17
DBMS_OUTPUT.PUT_LINE('The Error Message Traced is : '||V_ErrorMessage);
18
INSERT INTO TrappedMessages(ErrorNum, ErrorMsg, TrapDate)
19
VALUES(V_ErrorCode, V_ErrorMessage, SYSDATE);
20
COMMIT;
21
END;
22 END;
23 /
Enter value for deptnumber: 60
Enter value for deptname: CARGO
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> DECLARE
2 V_DeptNo Dept.Deptno%TYPE := &DeptNumber;
3 V_DeptName Dept.Dname%TYPE := '&DeptName';
4 V_DeptLoc Dept.Loc%TYPE := '&DeptLocation';
5 E_InvalidDept EXCEPTION;
6 BEGIN
7 UPDATE Dept
8 SET Dname = V_DeptName,
9
Loc = V_DeptLoc
10 WHERE Deptno = V_DeptNo;
11 END;
12 /
Enter value for deptnumber: 30
Enter value for deptname: SALESDIV
Enter value for deptlocation: DELHI
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SCOTT
13-JUL-10
Tried Illegal Update.
DECLARE
TYPE ValidateInsertValues
IS
RECORD
(
ValidateJob
NUMBER(2),
ValidateDeptno
NUMBER(2),
ValidateManager
NUMBER(2),
SalaryLess
NUMBER(4),
SalaryMore
NUMBER(6),
CurrentDate
DATE
);
ValidateRecordValues
ValidateInsertValues;
V_Empno
Emp.Empno%TYPE := &Empno;
V_Ename
Emp.Ename%TYPE := '&Ename';
V_Job
Emp.Job%TYPE := '&Job';
V_Sal
Emp.Sal%TYPE := &Salary;
V_Comm
Emp.Comm%TYPE := &Commission;
V_Deptno
Emp.Deptno%TYPE := &Deptno;
V_MGR
Emp.MGR%TYPE := &Manager;
V_HireDate
Emp.HireDate%TYPE := '&HireDate';
E_SalLess
EXCEPTION;
E_SalMore
EXCEPTION;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
24 E_NoDept
EXCEPTION;
25 E_NoJob
EXCEPTION;
26 E_InvalidHireDate
EXCEPTION;
27 E_InvalidManager
EXCEPTION;
28 E_NotNULLViolation EXCEPTION;
29 PRAGMA EXCEPTION_INIT(E_NotNULLViolation, -1400);
30 E_CheckViolation
EXCEPTION;
31 PRAGMA EXCEPTION_INIT(E_CheckViolation, -2290);
32 BEGIN
33 ValidateRecordValues.SalaryLess := 500;
34 ValidateRecordValues.SalaryMore := 150000;
35 SELECT
36 SYSDATE
37 INTO
38 ValidateRecordValues.CurrentDate
39 FROM DUAL;
40 ValidateRecordValues.CurrentDate :=
TO_DATE(TO_CHAR(ValidateRecordValues.CurrentDate, 'DD-MON-YY'), 'DD-MON-YY');
41 SELECT
42 COUNT(*)
43 INTO
44 ValidateRecordValues.ValidateJob
45 FROM Emp
46 WHERE Job = V_Job;
47 SELECT
48 COUNT(*)
49 INTO
50 ValidateRecordValues.ValidateDeptno
51 FROM Dept
52 WHERE Deptno = V_Deptno;
53 SELECT
54 COUNT(*)
55 INTO
56 ValidateRecordValues.ValidateManager
57 FROM Emp
58 WHERE MGR = V_MGR;
59 IF ValidateRecordValues.ValidateJob = 0
60 THEN
61
RAISE E_NoJob;
62 ELSIF ValidateRecordValues.ValidateDeptno = 0
63 THEN
64
RAISE E_NoDept;
65 ELSIF ValidateRecordValues.ValidateManager = 0
66 THEN
67
RAISE E_InvalidManager;
68 END IF;
69 IF V_Sal < ValidateRecordValues.SalaryLess
70 THEN
71
RAISE E_SalLess;
72 ELSIF V_Sal > ValidateRecordValues.SalaryMore
73 THEN
74
RAISE E_SalMore;
75 END IF;
76 IF ValidateRecordValues.CurrentDate <> V_HireDate
77 THEN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
78
RAISE E_InvalidHireDate;
79 END IF;
80 INSERT INTO Emp(Empno, Ename, Job, Sal, Comm, Deptno, MGR, HireDate)
81 VALUES(V_Empno, V_Ename, V_Job, V_Sal, V_Comm, V_Deptno, V_MGR,
V_HireDate);
82 COMMIT;
83 EXCEPTION
84 WHEN DUP_VAL_ON_INDEX THEN
85 DBMS_OUTPUT.PUT_LINE('Sorry, The Field With Unique Value is Getting
Duplicated.');
86 ROLLBACK;
87 WHEN E_CheckViolation THEN
88 DBMS_OUTPUT.PUT_LINE('A Field with Check Constraint is not Attended
Properly, Please Check Properly.');
89 ROLLBACK;
90 WHEN E_NotNULLViolation THEN
91 DBMS_OUTPUT.PUT_LINE('A Field which Cannot be NULL, is not attended, Please
Check Properly.');
92 ROLLBACK;
93 WHEN E_NoJob THEN
94 DBMS_OUTPUT.PUT_LINE('Sorry, The Job To be Inserted is Not Acceptable.');
95 ROLLBACK;
96 WHEN E_NoDept THEN
97 DBMS_OUTPUT.PUT_LINE('Sorry, The Department Number To be Inserted is Not
Acceptable.');
98 ROLLBACK;
99 WHEN E_InvalidManager THEN
100 DBMS_OUTPUT.PUT_LINE('Sorry, The Manager Number To be Inserted is Not
Acceptable.');
101 ROLLBACK;
102 WHEN E_SalLess THEN
103 DBMS_OUTPUT.PUT_LINE('Sorry, The Salary To be Inserted is Less Than The
Acceptable Value.');
104 ROLLBACK;
105 WHEN E_SalMore THEN
106 DBMS_OUTPUT.PUT_LINE('Sorry, The Salary To be Inserted is More Than The
Acceptable Value.');
107 ROLLBACK;
108 WHEN E_InvalidHireDate THEN
109 DBMS_OUTPUT.PUT_LINE('Sorry, The Hire Date To be Inserted is Not
Acceptable.');
110 ROLLBACK;
111 END;
112 /
Enter value for empno: 1234
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for salary: 2500
Enter value for commission: NULL
Enter value for deptno: 30
Enter value for manager: 7566
Enter value for hiredate: 14-JUL-10
PL/SQL procedure successfully completed.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for empno: 1234
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for salary: 2000
Enter value for commission: NULL
Enter value for deptno: 30
Enter value for manager: 7566
Enter value for hiredate: 14-JUL-10
Sorry, The Field With Unique Value is Getting Duplicated.
PL/SQL procedure successfully completed.
SQL> /
Enter value for empno: 1235
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for salary: 250
Enter value for commission: NULL
Enter value for deptno: 30
Enter value for manager: 7566
Enter value for hiredate: 14-JUL-10
Sorry, The Salary To be Inserted is Less Than The Acceptable Value.
PL/SQL procedure successfully completed.
SQL> /
Enter value for
Enter value for
Enter value for
Enter value for
Enter value for
Enter value for
Enter value for
Enter value for
Sorry, The Hire
empno: 1235
ename: SAMPLE
job: CLERK
salary: 2500
commission: NULL
deptno: 30
manager: 7566
hiredate: 11-JUl-10
Date To be Inserted is Not Acceptable.
7 rows selected.
SQL> DELETE FROM Emp
2 WHERE Empno = 1234;
1 row deleted.
SQL> COMMIT;
Commit complete.
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
cl scr
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM DEPTNO
--------- ----- --------- ----- ----- -----ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
12
DECLARE
V_Ename Emp.Ename%TYPE;
V_Job Emp.Job%TYPE;
E_ManyEmployees EXCEPTION;
CURSOR EmpCursor IS
SELECT MGR, COUNT(*) Tot_Emp
FROM Emp
WHERE MGR IS NOT NULL
GROUP BY MGR;
BEGIN
FOR MgrRecord IN EmpCursor
LOOP
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
13 BEGIN
14 SELECT Ename, Job INTO
15 V_Ename, V_Job
16 FROM Emp
17 WHERE Empno = MgrRecord.Mgr;
18 IF MgrRecord.Tot_Emp > 3 THEN
19 RAISE E_ManyEmployees;
20 ELSE
21 DBMS_OUTPUT.PUT_LINE('Employee, '||V_Ename||' Manages
'||MgrRecord.Tot_Emp||' Employees.');
22 END IF;
23 EXCEPTION
24 WHEN E_ManyEmployees THEN
25 DBMS_OUTPUT.PUT_LINE('Employee, '||V_EName||' Manages Many Employees,
Chance of decreasing his Performance, Recommend for Extra Allowances or
Emoluments.');
26 END;
27 END LOOP;
28 END;
29 /
Employee, JONES Manages 2 Employees.
Employee, BLAKE Manages Many Employees, Chance of decreasing his Performance,
Recommend for Extra Allowances or Emoluments.
Employee, CLARK Manages 1 Employees.
Employee, SCOTT Manages 1 Employees.
Employee, KING Manages 3 Employees.
Employee, FORD Manages 1 Employees.
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DECLARE
2 V_Empno Emp.Empno%TYPE := &GEmpno;
3 V_Ename Emp.Ename%TYPE;
4 BEGIN
5 SELECT Ename INTo V_Ename
6 FROM Emp
7 WHERE Empno = V_Empno;
8 EXCEPTION
9 WHEN NO_DATA_FOUND THEN
10 DBMS_OUTPUT.PUT_LINE('Sorry Data Not Found');
11 END;
12 /
Enter value for gempno: 7839
PL/SQL procedure successfully completed.
SQL> /
Enter value for gempno: 1234
Sorry Data Not Found
PL/SQL procedure successfully completed.
SQL> ED
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> DECLARE
2 V_Deptno Dept.Deptno%TYPE := &Deptno;
3 V_TotEmp NUMBER;
4 E_InvalidDept EXCEPTION;
5 BEGIN
6 IF V_Deptno NOT IN (10, 20, 30, 40) THEN
7 RAISE E_InvalidDept;
8 ELSE
9 SELECT COUNT(*) INTO
10 V_TotEmp FROM Emp
11 WHERE Deptno = V_Deptno;
12 DBMS_OUTPUT.PUT_LINE('The Total Employees in '||V_Deptno||' are
'||V_TotEmp||'.');
13 END IF;
14 DBMS_OUTPUT.PUT_LINE('No Exception was Raised...');
15 EXCEPTION
16 WHEN E_InvalidDept THEN
17 RAISE_APPLICATION_ERROR(-20220, 'Sorry There is no Such Department...as You
requested.');
18 END;
19 /
Enter value for deptno: 30
The Total Employees in 30 are 6.
No Exception was Raised...
PL/SQL procedure successfully completed.
SQL> /
Enter value for deptno: 50
DECLARE
*
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ERROR at line 1:
ORA-20220: Sorry There is no Such Department...as You requested.
ORA-06512: at line 17
SQL> cl scr
SQL> SELECT MGR, COUNT(*)
2 FROM Emp
3 GROUP BY MGR;
MGR
COUNT(*)
---------- ---------7566
2
7698
5
7782
1
7788
1
7839
3
7902
1
1
7 rows selected.
SQL> DECLARE
2 V_Ename Emp.Ename%TYPE;
3 V_Job Emp.Job%TYPE;
4 E_ManyEmployees EXCEPTION;
5 CURSOR EmpCursor IS
6 SELECT MGR, COUNT(*) Tot_Emp
7 FROM Emp
8 WHERE MGR IS NOT NULL
9 GROUP BY MGR;
10 BEGIN
11 FOR MgrRecord IN EmpCursor
12 LOOP
13
BEGIN
14
SELECT Ename, Job INTO
15
V_Ename, V_Job
16
FROM Emp
17
WHERE Empno = MgrRecord.Mgr;
18
IF MgrRecord.Tot_Emp > 3 THEN
19
RAISE E_ManyEmployees;
20
ELSE
21
DBMS_OUTPUT.PUT_LINE('Employee, '||V_Ename||' Manages
'||MgrRecord.Tot_Emp||' Employees.');
22
END IF;
23
EXCEPTION
24
WHEN E_ManyEmployees THEN
25
DBMS_OUTPUT.PUT_LINE('Employee, '||V_EName||' Manages Many Employees,
Chance of decreasing his Performance, Recommend for Extra Allowances or
Emoluments.');
26
END;
27 END LOOP;
28 END;
29 /
Employee, JONES Manages 2 Employees.
Employee, BLAKE Manages Many Employees, Chance of decreasing his Performance,
Recommend for Extra Allowances or Emoluments.
Employee, CLARK Manages 1 Employees.
Employee, SCOTT Manages 1 Employees.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18*
BEGIN
DECLARE
V_TestVariable CHAR(5) := '&String';
BEGIN
DBMS_OUTPUT.PUT_LINE ('This is A Test Line.');
DBMS_OUTPUT.PUT_LINE(V_TestVariable);
EXCEPTION
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
END;
EXCEPTION
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
END;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for string: Snake
This is A Test Line.
Snake
PL/SQL procedure successfully completed.
SQL> /
Enter value for string: Sample
An Error Raised.
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1 BEGIN
2
DECLARE
3
V_TestVariable CHAR(5) := '&String';
4
BEGIN
5
DBMS_OUTPUT.PUT_LINE ('This is A Test Line.');
6
DBMS_OUTPUT.PUT_LINE(V_TestVariable);
7
EXCEPTION
8
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
9
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
10
WHEN OTHERS THEN
11
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
12
END;
13 EXCEPTION
14 WHEN INVALID_NUMBER OR VALUE_ERROR THEN
15 DBMS_OUTPUT.PUT_LINE('An Error Raised.');
16 WHEN OTHERS THEN
17 DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
18* END;
SQL> /
Enter value for string: Sample
An Error Raised.
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
BEGIN
DECLARE
V_TestVariable CHAR(5) := '&String';
BEGIN
DBMS_OUTPUT.PUT_LINE ('This is A Test Line.');
DBMS_OUTPUT.PUT_LINE(V_TestVariable);
EXCEPTION
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
WHEN OTHERS THEN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
11
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
12
END;
13 EXCEPTION
14 WHEN INVALID_NUMBER OR VALUE_ERROR THEN
15 RAISE_APPLICATION_ERROR(-20001, 'The Actual Size of The Memory Allocated is
'||VSIZE(V_TestVariable)||' Bytes, You Are Trying To Occupy
'||LENGTH(V_TestVariable)||' Characters...');
16 WHEN OTHERS THEN
17 DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
18* END;
SQL> /
Enter value for string: Snake
RAISE_APPLICATION_ERROR(-20001, 'The Actual Size of The Memory Allocated is
'||VSIZE(V_TestVariable)||' Bytes, You Are Trying To Occupy
'||LENGTH(V_TestVariable)||' Characters...');
*
ERROR at line 15:
ORA-06550: line 15, column 86:
PLS-00201: identifier 'V_TESTVARIABLE' must be declared
ORA-06550: line 15, column 1:
PL/SQL: Statement ignored
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_INTestVariable CHAR(5);
3 BEGIN
4
DECLARE
5
V_TestVariable CHAR(5) := '&String';
6
BEGIN
7
DBMS_OUTPUT.PUT_LINE ('This is A Test Line.');
8
DBMS_OUTPUT.PUT_LINE(V_TestVariable);
9
V_INTestVariable := V_TestVariable;
10
EXCEPTION
11
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
12
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
13
WHEN OTHERS THEN
14
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
15
END;
16 EXCEPTION
17 WHEN INVALID_NUMBER OR VALUE_ERROR THEN
18 RAISE_APPLICATION_ERROR(-20001, 'The Actual Size of The Memory Allocated is
'||VSIZE(V_INTestVariable)||' Bytes, You Are Trying To Occupy 6 Characters...');
19 WHEN OTHERS THEN
20 DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
21* END;
SQL> /
Enter value for string: Snake
RAISE_APPLICATION_ERROR(-20001, 'The Actual Size of The Memory Allocated is
'||VSIZE(V_INTestVariable)||' Bytes, You Are Trying To Occupy 6 Characters...');
*
ERROR at line 18:
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> EDED
SP2-0042: unknown command "EDED" - rest of line ignored.
SQL> ED
Wrote file afiedt.buf
1 DECLARE
2 V_INTestVariable CHAR(5);
3 V_Size NUMBER;
4 V_Message VARCHAR2(200);
5 BEGIN
6
DECLARE
7
V_TestVariable CHAR(5) := '&String';
8
BEGIN
9
DBMS_OUTPUT.PUT_LINE ('This is A Test Line.');
10
DBMS_OUTPUT.PUT_LINE(V_TestVariable);
11
V_INTestVariable := V_TestVariable;
12
EXCEPTION
13
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
14
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
15
WHEN OTHERS THEN
16
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
17
END;
18 EXCEPTION
19 WHEN INVALID_NUMBER OR VALUE_ERROR THEN
20 V_Size := VSIZE(V_INTestVariable);
21 V_Message := 'The Actual Size of The Memory Allocated is '||V_Size||' Bytes,
You Are Trying To Occupy 6 Characters...';
22 RAISE_APPLICATION_ERROR(-20001, V_Size);
23 WHEN OTHERS THEN
24 DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
25* END;
SQL> /
Enter value for string: Snake
V_Size := VSIZE(V_INTestVariable);
*
ERROR at line 20:
ORA-06550: line 20, column 11:
PLS-00204: function or pseudo-column 'VSIZE' may be used inside a SQL statement
only
ORA-06550: line 20, column 1:
PL/SQL: Statement ignored
SQL> ED
Wrote file afiedt.buf
1
2
DECLARE
V_INTestVariable CHAR(5);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
3 V_Size NUMBER;
4 V_Message VARCHAR2(200);
5 BEGIN
6
DECLARE
7
V_TestVariable CHAR(5) := '&String';
8
BEGIN
9
DBMS_OUTPUT.PUT_LINE ('This is A Test Line.');
10
DBMS_OUTPUT.PUT_LINE(V_TestVariable);
11
V_INTestVariable := V_TestVariable;
12
EXCEPTION
13
WHEN INVALID_NUMBER OR VALUE_ERROR THEN
14
DBMS_OUTPUT.PUT_LINE('An Error Raised.');
15
WHEN OTHERS THEN
16
DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
17
END;
18 EXCEPTION
19 WHEN INVALID_NUMBER OR VALUE_ERROR THEN
20 SELECT VSIZE(V_INTestVariable) INTO V_Size
21 FROM DUAL;
22 V_Message := 'The Actual Size of The Memory Allocated is '||V_Size||' Bytes,
You Are Trying To Occupy 6 Characters...';
23 RAISE_APPLICATION_ERROR(-20001, V_Size);
24 WHEN OTHERS THEN
25 DBMS_OUTPUT.PUT_LINE('Some Error, Please Check');
26* END;
SQL> /
Enter value for string: Snake
This is A Test Line.
Snake
PL/SQL procedure successfully completed.
SQL> /
Enter value for string: Sample
DECLARE
*
ERROR at line 1:
ORA-20001:
ORA-06512: at line 23
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
DECLARE
V_Deptno Dept.Deptno%TYPE := &Deptno;
V_TotEmp NUMBER;
E_InvalidDept EXCEPTION;
BEGIN
IF V_Deptno NOT IN (10, 20, 30, 40) THEN
RAISE E_InvalidDept;
ELSE
SELECT COUNT(*) INTO
V_TotEmp FROM Emp
WHERE Deptno = V_Deptno;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
DECLARE
TYPE ValidateInsertValues
IS
RECORD
(
ValidateJob
NUMBER(2),
ValidateDeptno
NUMBER(2),
ValidateManager
NUMBER(2),
SalaryLess
NUMBER(4),
SalaryMore
NUMBER(6),
CurrentDate
DATE
);
ValidateRecordValues
ValidateInsertValues;
V_Empno
Emp.Empno%TYPE := &Empno;
V_Ename
Emp.Ename%TYPE := '&Ename';
V_Job
Emp.Job%TYPE := '&Job';
V_Sal
Emp.Sal%TYPE := &Salary;
V_Comm
Emp.Comm%TYPE := &Commission;
V_Deptno
Emp.Deptno%TYPE := &Deptno;
V_MGR
Emp.MGR%TYPE := &Manager;
V_HireDate
Emp.HireDate%TYPE := '&HireDate';
E_NotNULLViolation EXCEPTION;
PRAGMA EXCEPTION_INIT(E_NotNULLViolation, -1400);
E_CheckViolation
EXCEPTION;
PRAGMA EXCEPTION_INIT(E_CheckViolation, -2290);
BEGIN
ValidateRecordValues.SalaryLess := 500;
ValidateRecordValues.SalaryMore := 150000;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
29 SELECT
30 SYSDATE
31 INTO
32 ValidateRecordValues.CurrentDate
33 FROM DUAL;
34 ValidateRecordValues.CurrentDate :=
TO_DATE(TO_CHAR(ValidateRecordValues.CurrentDate, 'DD-MON-YY'), 'DD-MON-YY');
35 SELECT
36 COUNT(*)
37 INTO
38 ValidateRecordValues.ValidateJob
39 FROM Emp
40 WHERE Job = V_Job;
41 SELECT
42 COUNT(*)
43 INTO
44 ValidateRecordValues.ValidateDeptno
45 FROM Dept
46 WHERE Deptno = V_Deptno;
47 SELECT
48 COUNT(*)
49 INTO
50 ValidateRecordValues.ValidateManager
51 FROM Emp
52 WHERE MGR = V_MGR;
53 IF ValidateRecordValues.ValidateJob = 0
54 THEN
55
RAISE_APPLICATION_ERROR(-20100, 'Sorry, The Job To be Inserted is Not
Acceptable.');
56
ROLLBACK;
57 ELSIF ValidateRecordValues.ValidateDeptno = 0
58 THEN
59
RAISE_APPLICATION_ERROR(-20101, 'Sorry, The Department Number To be
Inserted is Not Acceptable.');
60
ROLLBACK;
61 ELSIF ValidateRecordValues.ValidateManager = 0
62 THEN
63
RAISE_APPLICATION_ERROR(-20102, 'Sorry, The Manager Number To be Inserted
is Not Acceptable.');
64
ROLLBACK;
65 END IF;
66 IF V_Sal < ValidateRecordValues.SalaryLess
67 THEN
68
RAISE_APPLICATION_ERROR(-20103, 'Sorry, The Salary Value is Less Than
Expected, Hence Insert is Not Acceptable.');
69
ROLLBACK;
70 ELSIF V_Sal > ValidateRecordValues.SalaryMore
71 THEN
72
RAISE_APPLICATION_ERROR(-20104, 'Sorry, The Salary Value is More Than
Expected, Hence Insert is Not Acceptable.');
73
ROLLBACK;
74 END IF;
75 IF ValidateRecordValues.CurrentDate <> V_HireDate
76 THEN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
77
RAISE_APPLICATION_ERROR(-20105, 'Sorry, The Hire Date Value is Above The
System Requirements, Hence Insert is Not Acceptable.');
78
ROLLBACK;
79 END IF;
80 INSERT INTO Emp(Empno, Ename, Job, Sal, Comm, Deptno, MGR, HireDate)
81 VALUES(V_Empno, V_Ename, V_Job, V_Sal, V_Comm, V_Deptno, V_MGR,
V_HireDate);
82 COMMIT;
83 EXCEPTION
84 WHEN DUP_VAL_ON_INDEX THEN
85 DBMS_OUTPUT.PUT_LINE('Sorry, The Field With Unique Value is Getting
Duplicated.');
86 ROLLBACK;
87 WHEN E_CheckViolation THEN
88 RAISE_APPLICATION_ERROR(-20106, 'A Field with Check Constraint is not
Attended Properly, Please Check Properly.');
89 ROLLBACK;
90 WHEN E_NotNULLViolation THEN
91 RAISE_APPLICATION_ERROR(-20107, 'A Field which Cannot be NULL, is not
attended, Please Check Properly.');
92 ROLLBACK;
93 END;
94 /
Enter value for empno: 7839
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for salary: 2500
Enter value for commission: NULL
Enter value for deptno: 30
Enter value for manager: 7566
Enter value for hiredate: 30-AUG-10
Sorry, The Field With Unique Value is Getting Duplicated.
PL/SQL procedure successfully completed.
SQL> /
Enter value for empno: NULL
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for salary: 2000
Enter value for commission: NULL
Enter value for deptno: 30
Enter value for manager: 7566
Enter value for hiredate: 30-AUG-10
DECLARE
*
ERROR at line 1:
ORA-20107: A Field which Cannot be NULL, is not attended, Please Check
Properly.
ORA-06512: at line 91
SQL> /
Enter value for empno: 1234
Enter value for ename: Sample
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
SQL> <<EmpSearch>>
2 DECLARE
3 V-Empno Emp.Empno%TYPE := &PEmpno;
4 V_Ename Emp.Ename%TYPE;
5 BEGIN
6 SELECT Ename INTO V_Ename
7 FROM Emp
8 WHERE Empno = V_Empno;
9 DBMS_OUTPUT.PUT_LINE(V_Ename);
10 EXCEPTION
11 WHEN NO_DATA_FOUND THEN
12 DBMS_OUTPUT.PUT_LINE('Sorry!');
13 END EmpSearch;
14 /
Enter value for pempno: 7839
V-Empno Emp.Empno%TYPE := 7839;
*
ERROR at line 3:
ORA-06550: line 3, column 2:
PLS-00103: Encountered the symbol "-" when expecting one of the following:
constant exception <an identifier>
<a double-quoted delimited-identifier> table LONG_ double ref
char time timestamp interval date binary national character
nchar
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
<<EmpSearch>>
DECLARE
V_Empno Emp.Empno%TYPE := &PEmpno;
V_Ename Emp.Ename%TYPE;
BEGIN
SELECT Ename INTO V_Ename
FROM Emp
WHERE Empno = V_Empno;
DBMS_OUTPUT.PUT_LINE(V_Ename);
EXCEPTION
WHEN NO_DATA_FOUND THEN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
12 DBMS_OUTPUT.PUT_LINE('Sorry!');
13* END EmpSearch;
SQL> /
Enter value for pempno: 7839
KING
PL/SQL procedure successfully completed.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13
14*
SQL>
Procedure created.
SQL> EXEC EmpSearch(7839);
KING
PL/SQL procedure successfully completed.
SQL> SPOOL OFF
SQL> cl scr
SQL> DESC USER_OBJECTS
Name
Null?
----------------------------------------- -------OBJECT_NAME
SUBOBJECT_NAME
OBJECT_ID
DATA_OBJECT_ID
OBJECT_TYPE
CREATED
LAST_DDL_TIME
TIMESTAMP
STATUS
TEMPORARY
GENERATED
SECONDARY
Type
---------------------------VARCHAR2(128)
VARCHAR2(30)
NUMBER
NUMBER
VARCHAR2(19)
DATE
DATE
VARCHAR2(19)
VARCHAR2(7)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(1)
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------ORDID
SEQUENCE
PRODID
SEQUENCE
CUSTID
SEQUENCE
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------MESSAGES
TABLE
EMPSEARCH
PROCEDURE
EMPLOYEE
SYNONYM
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------EMPENAME
VIEW
EMPLOYEENAMES
SYNONYM
EMPENAMEJOB
VIEW
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------SAMPLESEQ01
SEQUENCE
EMPNAMEJOBS
SYNONYM
EMPENAMES
VIEW
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------SAMPLESEQ02
SEQUENCE
NAMEATLEASTWITHONEA
SYNONYM
SAMPLESEQ03
SEQUENCE
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------EMPENAMES01
VIEW
SAMPLESEQ04
SEQUENCE
NAMESTARTINGWITHS
SYNONYM
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------SAMPLESEQ05
SEQUENCE
MYAUDIT
TABLE
SAMPLESEQ06
SEQUENCE
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------TRAPPEDMESSAGES
TABLE
DEPT
TABLE
DEPT_PRIMARY_KEY
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
INDEX
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------EMP
TABLE
SAMPLESEQ07
SEQUENCE
EMP_PRIMARY_KEY
INDEX
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------BONUS
TABLE
SALGRADE
TABLE
DUMMY
TABLE
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------CUSTOMER
TABLE
CUSTOMER_PRIMARY_KEY
INDEX
ORD
TABLE
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------ORD_PRIMARY_KEY
INDEX
ITEM
TABLE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ITEM_PRIMARY_KEY
INDEX
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------PRODUCT
TABLE
PRODUCT_PRIMARY_KEY
INDEX
PRICE
TABLE
OBJECT_NAME
-------------------------------------------------------------------------------OBJECT_TYPE
------------------PRICE_INDEX
INDEX
SALES
VIEW
41 rows selected.
SQL> cl scr
SQL> SET SERVEROUTPUT ON
SQL> SET VERIFY OFF
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
Procedure created.
SQL> COLUMN Empno FORMAT 9999
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
SQL>
SQL>
SQL>
SQL>
2
3
ENAME
SAL
DEPTNO
---------- ------- ---------KING
5000
10
CLARK
2450
10
MILLER
1300
10
JONES
2975
20
SCOTT
3000
20
ADAMS
1100
20
SMITH
800
20
FORD
3000
20
BLAKE
2850
30
MARTIN
1250
30
ALLEN
1600
30
ENAME
SAL
DEPTNO
---------- ------- ---------TURNER
1500
30
JAMES
950
30
WARD
1250
30
14 rows selected.
SQL> cl scr
SQL> DESC USER_OBJECTS
Name
Null?
----------------------------------------- -------OBJECT_NAME
SUBOBJECT_NAME
OBJECT_ID
DATA_OBJECT_ID
OBJECT_TYPE
CREATED
LAST_DDL_TIME
TIMESTAMP
STATUS
TEMPORARY
GENERATED
SECONDARY
SQL>
SQL>
SQL>
SQL>
2
3
Type
---------------------------VARCHAR2(128)
VARCHAR2(30)
NUMBER
NUMBER
VARCHAR2(19)
DATE
DATE
VARCHAR2(19)
VARCHAR2(7)
VARCHAR2(1)
VARCHAR2(1)
VARCHAR2(1)
OBJECT_NAME
--------------EMPSEARCH
MYBONUS
OBJECT_TYPE
--------------PROCEDURE
PROCEDURE
STATUS
---------INVALID
VALID
OBJECT_TYPE
--------------PROCEDURE
PROCEDURE
STATUS
---------VALID
VALID
SQL> BEGIN
2 EmpSearch(&GEmpno);
3 END;
4 /
Enter value for gempno: 7839
KING
PL/SQL procedure successfully completed.
SQL> /
Enter value for gempno: 7654
MARTIN
PL/SQL procedure successfully completed.
SQL> /
Enter value for gempno: 1234
Sorry!
PL/SQL procedure successfully completed.
SQL> EXEC EmpSearch(&GEmpno);
Enter value for gempno: 7839
KING
PL/SQL procedure successfully completed.
SQL> /
Enter value for gempno: 7654
MARTIN
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> SELECT OBJECT_NAME, OBJECT_TYPE, STATUS
2 FROM USER_OBJECTS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
OBJECT_NAME
--------------EMPSEARCH
MYBONUS
OBJECT_TYPE
--------------PROCEDURE
PROCEDURE
STATUS
---------VALID
VALID
MYBONUS
Information
Information
Information
Information
is
is
is
is
10
20
30
40
BLAKE
MARTIN
ALLEN
2708
1188
1520
ENAME
SAL
---------- ------TURNER
1425
JAMES
903
WARD
1188
14 rows selected.
SQL> cl scr
SQL> DESC USER_SOURCE
Name
Null?
----------------------------------------- -------NAME
TYPE
LINE
TEXT
SQL>
SQL>
2
3
TO_C
---1>
2>
3>
4>
5>
6>
7>
8>
9>
10>
11>
TEXT
---------------------------------------PROCEDURE
EmpSearch(PEmpno Emp.Empno%TYPE)
IS
V_Empno Emp.Empno%TYPE := PEmpno;
V_Ename Emp.Ename%TYPE;
BEGIN
SELECT Ename INTO V_Ename
FROM Emp
WHERE Empno = V_Empno;
DBMS_OUTPUT.PUT_LINE(V_Ename);
EXCEPTION
TO_C
---12>
13>
14>
TEXT
---------------------------------------WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('Sorry!');
END EmpSearch;
Type
---------------------------VARCHAR2(30)
VARCHAR2(12)
NUMBER
VARCHAR2(4000)
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1 SELECT TO_CHAR(Line, 99)||'>', Text
2 FROM USER_SOURCE
3* WHERE NAME = 'MYBONUS'
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
TO_C
---1>
2>
3>
4>
5>
6>
7>
8>
9>
10>
11>
TEXT
---------------------------------------PROCEDURE
MyBonus
AS
CURSOR DeptCursor IS
SELECT Deptno FROm Dept;
BEGIN
FOR R_GroupBonus IN DeptCursor LOOP
UPDATE Emp
SET Sal = Sal * 0.95
WHERE Deptno = R_GroupBonus.DeptNo;
DBMS_OUTPUT.PUT_LINe('The Bonus Informat
TO_C TEXT
---- ---------------------------------------ion is '||R_GroupBonus.Deptno);
12> END LOOP;
13> END MyBonus;
13 rows selected.
SQL> ROLLBACK:
2
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT Ename, Sal
2 FROM Emp;
ENAME
SAL
---------- ------KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ENAME
SAL
---------- ------SCOTT
3000
ADAMS
1100
MILLER
1300
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> cl scr
SQL> CREATE OR REPLACE PROCEDURE
2 EmpBonus
3 AS
4 CURSOR DeptCursor IS
5 SELECT Deptno FROM Dept;
6 BEGIN
7 FOR R_GroupBonus IN DeptCursor
8 LOOP
9
DECLARE
10
E_JobNotFound EXCEPTION;
11
CURSOR EmpCursor IS
12
SELECT *
13
FROM Emp
14
WHERE Deptno = R_GroupBonus.Deptno;
15
BEGIN
16
FOR R_EmpCursor IN EmpCursor
17
LOOP
18
IF R_EmpCursor.Job = 'PRESIDENT'
19
THEN
20
UPDATE Emp
21
SET Sal = Sal + (Sal * 0.40)
22
WHERE Empno = R_EmpCursor.Empno;
23
DBMS_OUTPUT.PUT_LINE('The Job For Updation is '||R_EmpCursor.Job);
24
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
25
DBMS_OUTPUT.PUT_LINE('Increament Added : '||((R_EmpCursor.Sal +
(R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
26
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is : '||(R_EmpCursor.Sal +
(R_EmpCursor.Sal * 0.40)));
27
ELSE
28
IF R_EmpCursor.Job = 'MANAGER'
29
THEN
30
UPDATE Emp
31
SET Sal = Sal + (Sal * 0.35)
32
WHERE Empno = R_EmpCursor.Empno;
33
DBMS_OUTPUT.PUT_LINE('The Job For Updation is '||R_EmpCursor.Job);
34
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
35
DBMS_OUTPUT.PUT_LINE('Increament Added : '||((R_EmpCursor.Sal +
(R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
36
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is :
'||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
37
IF R_EmpCursor.Job = 'ANALYST'
38
THEN
39
UPDATE Emp
40
SET Sal = Sal + (Sal * 0.30)
41
WHERE Empno = R_EmpCursor.Empno;
42
DBMS_OUTPUT.PUT_LINE('The Job For Updation is
'||R_EmpCursor.Job);
43
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
44
DBMS_OUTPUT.PUT_LINE('Increament Added : '||((R_EmpCursor.Sal
+ (R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
45
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is :
'||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
46
ELSE
47
IF R_EmpCursor.Job = 'SALESMAN'
48
THEN
49
UPDATE Emp
50
SET Sal = Sal + (Sal * 0.25)
51
WHERE Empno = R_EmpCursor.Empno;
52
DBMS_OUTPUT.PUT_LINE('The Job For Updation is
'||R_EmpCursor.Job);
53
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
54
DBMS_OUTPUT.PUT_LINE('Increament Added :
'||((R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
55
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is :
'||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
56
ELSE
57
IF R_EmpCursor.Job = 'CLERK'
58
THEN
59
UPDATE Emp
60
SET Sal = Sal + (Sal * 0.20)
61
WHERE Empno = R_EmpCursor.Empno;
62
ELSE
63
DBMS_OUTPUT.PUT_LINE('The Job For Updation is
'||R_EmpCursor.Job);
64
DBMS_OUTPUT.PUT_LINE('Old Sal :
'||R_EmpCursor.Sal);
65
DBMS_OUTPUT.PUT_LINE('Increament Added :
'||((R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
66
DBMS_OUTPUT.PUT_LINE('The Salary With Increment
is : '||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
67
END IF;
68
END IF;
69
END IF;
70
END IF;
71
END IF;
72
END LOOP;
73
EXCEPTION
74
WHEN E_JobNotFound THEN
75
DBMS_OUTPUT.PUT_LINE('The Respective Job is Not Found...Please Verify!');
76
END;
77 DBMS_OUTPUT.PUT_LINE('The Bonus Information is '||R_GroupBonus.Deptno);
78 END LOOP;
79 END EmpBonus;
80 /
Procedure created.
SQL> EXEC EmpBonus;
The Job For Updation is PRESIDENT
Old Sal : 5000
Increament Added : 2000
The Salary With Increment is : 7000
The Job For Updation is MANAGER
Old Sal : 2450
Increament Added : 980
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
22
WHERE Empno = R_EmpCursor.Empno;
23
DBMS_OUTPUT.PUT_LINE('The Job For Updation is '||R_EmpCursor.Job);
24
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
25
DBMS_OUTPUT.PUT_LINE('Increament Added : '||((R_EmpCursor.Sal +
(R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
26
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is : '||(R_EmpCursor.Sal +
(R_EmpCursor.Sal * 0.40)));
27
ELSE
28
IF R_EmpCursor.Job = 'MANAGER'
29
THEN
30
UPDATE Emp
31
SET Sal = Sal + (Sal * 0.35)
32
WHERE Empno = R_EmpCursor.Empno;
33
DBMS_OUTPUT.PUT_LINE('The Job For Updation is '||R_EmpCursor.Job);
34
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
35
DBMS_OUTPUT.PUT_LINE('Increament Added : '||((R_EmpCursor.Sal +
(R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
36
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is :
'||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
37
IF R_EmpCursor.Job = 'ANALYST'
38
THEN
39
UPDATE Emp
40
SET Sal = Sal + (Sal * 0.30)
41
WHERE Empno = R_EmpCursor.Empno;
42
DBMS_OUTPUT.PUT_LINE('The Job For Updation is
'||R_EmpCursor.Job);
43
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
44
DBMS_OUTPUT.PUT_LINE('Increament Added : '||((R_EmpCursor.Sal
+ (R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
45
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is :
'||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
46
ELSE
47
IF R_EmpCursor.Job = 'SALESMAN'
48
THEN
49
UPDATE Emp
50
SET Sal = Sal + (Sal * 0.25)
51
WHERE Empno = R_EmpCursor.Empno;
52
DBMS_OUTPUT.PUT_LINE('The Job For Updation is
'||R_EmpCursor.Job);
53
DBMS_OUTPUT.PUT_LINE('Old Sal : '||R_EmpCursor.Sal);
54
DBMS_OUTPUT.PUT_LINE('Increament Added :
'||((R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
55
DBMS_OUTPUT.PUT_LINE('The Salary With Increment is :
'||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
56
ELSE
57
IF R_EmpCursor.Job = 'CLERK'
58
THEN
59
UPDATE Emp
60
SET Sal = Sal + (Sal * 0.20)
61
WHERE Empno = R_EmpCursor.Empno;
62
ELSE
63
DBMS_OUTPUT.PUT_LINE('The Job For Updation is
'||R_EmpCursor.Job);
64
DBMS_OUTPUT.PUT_LINE('Old Sal :
'||R_EmpCursor.Sal);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
65
DBMS_OUTPUT.PUT_LINE('Increament Added :
'||((R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)) - (R_EmpCursor.Sal)));
66
DBMS_OUTPUT.PUT_LINE('The Salary With Increment
is : '||(R_EmpCursor.Sal + (R_EmpCursor.Sal * 0.40)));
67
END IF;
68
END IF;
69
END IF;
70
END IF;
71
END IF;
72
END LOOP;
73
EXCEPTION
74
WHEN E_JobNotFound THEN
75
DBMS_OUTPUT.PUT_LINE('The Respective Job is Not Found...Please Verify!');
76
END;
77 DBMS_OUTPUT.PUT_LINE('The Bonus Information is '||R_GroupBonus.Deptno);
78 END LOOP;
79 END EmpBonus;
80 /
Procedure created.
SQL> EXEC EmpBonus
The Job For Updation is PRESIDENT
Old Sal : 5000
Increament Added : 2000
The Salary With Increment is : 7000
The Job For Updation is MANAGER
Old Sal : 2450
Increament Added : 980
The Salary With Increment is : 3430
The Job For Updation is MANAGER
Old Sal : 2450
Increament Added : 980
The Salary With Increment is : 3430
The Bonus Information is 10
The Job For Updation is MANAGER
Old Sal : 2975
Increament Added : 1190
The Salary With Increment is : 4165
The Job For Updation is MANAGER
Old Sal : 2975
Increament Added : 1190
The Salary With Increment is : 4165
The Bonus Information is 20
The Job For Updation is MANAGER
Old Sal : 2850
Increament Added : 1140
The Salary With Increment is : 3990
The Job For Updation is MANAGER
Old Sal : 2850
Increament Added : 1140
The Salary With Increment is : 3990
The Bonus Information is 30
The Bonus Information is 40
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Procedure created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
8
9
10
11
12
13
14
15
16
17
18
19
20
BEGIN
SELECT
*
INTO
V_EmpRec
FROM Emp
WHERE Empno = PEmpno;
DBMS_OUTPUT.PUT_LINE('The
DBMS_OUTPUT.PUT_LINE('The
DBMS_OUTPUT.PUT_LINE('The
DBMS_OUTPUT.PUT_LINE('The
END GetEnameSalJob01;
/
Procedure created.
SQL> EXEC GetEnameSalJob01(7839);
The Details of Employee 7839 Are...
The Name of The Employee is : KING
The Salary of The Employee is : 7000
The Job of The Employee is : PRESIDENT
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> CREATE OR REPLACE PROCEDURE
2 EmpInsert
3 (
4
P_Empno Emp.Empno%TYPE,
5
P_Ename Emp.Ename%TYPE,
6
P_Sal Emp.Sal%TYPE,
7
P_Deptno Emp.Deptno%TYPE,
8
P_Job Emp.Job%TYPE,
9
P_Comm
Emp.Comm%TYPE,
10
P_HireDate Emp.HireDate%TYPE,
11
P_MGR Emp.MGR%TYPE
12 )
13 AS
14 BEGIN
15 INSERT INTO
16 Emp (Empno, Ename, Sal, Deptno, Job, Comm, HireDate, MGR)
17 VALUES(P_Empno, UPPER(P_Ename), P_Sal, P_Deptno, UPPER(P_Job), P_Comm,
P_HireDate, P_MGR);
18 COMMIT;
19 Exception
20 WHEN DUP_VAL_ON_INDEX THEN
21 RAISE_APPLICATION_ERROR(-20001, 'Employee already
22 exists');
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
23
24
25
26
Procedure created.
SQL> DECLARE
2 TYPE EmpRecord
3 IS RECORD
4 (
5 Empno Emp.Empno%TYPE,
6 Ename Emp.Ename%TYPE,
7 Sal
Emp.Sal%TYPE,
8 Deptno
Emp.Deptno%TYPE,
9 Job
Emp.Job%TYPE,
10 Comm
Emp.Comm%TYPE,
11 HireDate
Emp.HireDate%TYPE,
12 MGR
Emp.MGR%TYPE
13 );
14 V_EmpRecord EmpRecord;
15 BEGIN
16 V_EmpRecord.Empno := &SEmpno;
17 V_EmpRecord.Ename := '&SEname';
18 V_EmpRecord.Sal := &SSal;
19 V_EmpRecord.Deptno := &SDeptno;
20 V_EmpRecord.Job := '&SJob';
21 V_EmpRecord.Comm := &SComm;
22 V_EmpRecord.HireDate := &SHireDate;
23 V_EmpRecord.MGR := &SMGR;
24 EmpInsert(
25
V_EmpRecord.Empno,
26
V_EmpRecord.Ename,
27
V_EmpRecord.Sal,
28
V_EmpRecord.Deptno,
29
V_EmpRecord.Job,
30
V_EmpRecord.Comm,
31
V_EmpRecord.HireDate,
32
V_EmpRecord.MGR
33
);
34 END;
35 /
Enter value for sempno: 1234
Enter value for sename: SAMPLE
Enter value for ssal: 2500
Enter value for sdeptno: 30
Enter value for sjob: CLERK
Enter value for scomm: NULL
Enter value for shiredate: 31-AUG-10
Enter value for smgr: 7566
V_EmpRecord.HireDate := 31-AUG-10;
*
ERROR at line 22:
ORA-06550: line 22, column 28:
PLS-00201: identifier 'AUG' must be declared
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value
Enter value
Enter value
Enter value
Enter value
Enter value
Enter value
Enter value
for
for
for
for
for
for
for
for
sempno: 1234
sename: SAMPLE
ssal: 2500
sdeptno: 30
sjob: CLERK
scomm: NULL
shiredate: '31-AUG-10'
smgr: 7566
28 ||RPAD(V_EmpRecordType.EmpRecord.Ename,
12)||RPAD(V_EmpRecordType.EmpRecord.Job,
29
30 12)||RPAD(V_EmpRecordType.EmpRecord.Deptno,
31
32 8)||NVL(TO_CHAR(RPAD(V_EmpRecordType.EmpRecord.MGR, 10)),'No
33
34 Manager')||RPAD(V_EmpRecordType.EmpRecord.Hiredate,
35
36 12)||RPAD(V_EmpRecordType.EmpRecord.Sal,
37
38 12)||NVL(TO_CHAR(RPAD(V_EmpRecordType.EmpRecord.Comm, 12)),'-NA-'));
39 END LOOP;
40 CLOSE V_GenericCursor;
41 DBMS_OUTPUT.PUT_LINE(V_RowCount||' Rows Processed So Far...');
42 END EmpDataDisplay;
43 /
Procedure created.
SQL> EXEC EmpDataDisplay;
****************************Employees Information*******************************
-------------------------------------------------------------------------------EmpNo
Ename
Job
Deptno Mgr
Hiredate
Sal
Comm
-------------------------------------------------------------------------------7839
KING
PRESIDENT
10
No
Manager17-NOV-81
7000
7698
BLAKE
MANAGER
7782
CLARK
MANAGER
7566
JONES
MANAGER
7654
MARTIN
SALESMAN
7499
ALLEN
SALESMAN
7844
TURNER
SALESMAN
7900
JAMES
CLERK
7521
WARD
SALESMAN
7902
FORD
ANALYST
7369
SMITH
CLERK
7788
SCOTT
ANALYST
7876
ADAMS
CLERK
7934
MILLER
CLERK
1234
SAMPLE
CLERK
15 Rows Processed So Far...
-NA30
10
20
30
30
30
30
30
20
20
20
20
10
30
7839
7839
7839
7698
7698
7698
7698
7698
7566
7902
7566
7788
7782
7566
01-MAY-81
09-JUN-81
02-APR-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
09-DEC-82
12-JAN-83
23-JAN-82
31-AUG-10
3847.5
3307.5
4016.25
1250
1600
1500
950
1250
3000
800
3000
1100
1300
2500
-NA-NA-NA1400
300
0
-NA500
-NA-NA-NA-NA-NA-NA-
10 );
11 V_DeptRecordType TablesRecordType;
12 BEGIN
13
OPEN V_GenericCursor
14
FOR
15
SELECT * FROM Dept;
16
DBMS_OUTPUT.PUT_LINE(RPAD(LPAD('Department Information', 29, '*'), 49,
'*'));
17
DBMS_OUTPUT.PUT_LINE(RPAD('-', 40,'-'));
18
DBMS_OUTPUT.PUT_LINE(RPAD('Deptno', 8)|| RPAD('Dname', 12)||RPAD('Loc',
12));
19
DBMS_OUTPUT.PUT_LINE(RPAD('-', 40,'-'));
20
LOOP
21
FETCH V_GenericCursor INTO V_DeptRecordType.DeptRecord;
22
EXIT WHEN V_GenericCursor%NOTFOUND;
23
V_RoWCount := V_GenericCursor%ROWCOUNT;
24
DBMS_OUTPUT.PUT_LINE(RPAD(V_DeptRecordType.DeptRecord.Deptno, 8)
||RPAD(V_DeptRecordType.DeptRecord.Dname,
12)||RPAD(V_DeptRecordType.DeptRecord.Dname, 12));
25
END LOOP;
26
CLOSE V_GenericCursor;
27
DBMS_OUTPUT.PUT_LINE(V_RowCount||' Rows Processed So Far...');
28 END DeptDataDisplay;
29 /
Procedure created.
SQL> EXEC DeptDataDisplay
*******Department Information********************
---------------------------------------Deptno Dname
Loc
---------------------------------------10
ACCOUNTING ACCOUNTING
20
RESEARCH
RESEARCH
30
SALES
SALES
40
OPERATIONS OPERATIONS
4 Rows Processed So Far...
PL/SQL procedure successfully completed.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
DBMS_OUTPUT.PUT_LINE(RPAD(LPAD('Salary Grade Information', 29, '*'),
49, '*'));
17
DBMS_OUTPUT.PUT_LINE(RPAD('-', 40,'-'));
18
DBMS_OUTPUT.PUT_LINE(RPAD('Grade', 8)|| RPAD('LoSal',
12)||RPAD('HiSal', 12));
19
DBMS_OUTPUT.PUT_LINE(RPAD('-', 40,'-'));
20
LOOP
21
FETCH V_GenericCursor INTO V_SalGradeRecordType.SalGradeRecord;
22
EXIT WHEN V_GenericCursor%NOTFOUND;
23
V_RoWCount := V_GenericCursor%ROWCOUNT;
24
DBMS_OUTPUT.PUT_LINE(RPAD(V_SalGradeRecordType.SalGradeRecord.Grade,
8) ||RPAD(V_SalGradeRecordType.SalGradeRecord.LoSal,
12)||RPAD(V_SalGradeRecordType.SalGradeRecord.HiSal, 12));
25
END LOOP;
26
CLOSE V_GenericCursor;
27
DBMS_OUTPUT.PUT_LINE(V_RowCount||' Rows Processed So Far...');
28 END SalGradeDataDisplay;
29 /
Procedure created.
SQL> EXEC SalGradeDataDisplay;
*****Salary Grade Information********************
---------------------------------------Grade
LoSal
HiSal
---------------------------------------1
700
1200
2
1201
1400
3
1401
2000
4
2001
3000
5
3001
9999
5 Rows Processed So Far...
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
DECLARE
V_Table VARCHAR2(30) := UPPER('&GiveTableName');
E_IllegalRequest EXCEPTION;
BEGIN
IF V_Table = 'EMP' THEN
EmpDataDisplay;
ELSE
IF V_Table = 'DEPT' THEN
DeptDataDisplay;
ELSE
IF V_Table = 'SALGRADE' THEN
SalGradedataDisplay;
ELSE
RAISE E_IllegalRequest;
END IF;
END IF;
END IF;
EXCEPTION
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
-NA30
10
20
30
30
30
30
30
20
20
20
20
10
30
7839
7839
7839
7698
7698
7698
7698
7698
7566
7902
7566
7788
7782
7566
01-MAY-81
09-JUN-81
02-APR-81
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
09-DEC-82
12-JAN-83
23-JAN-82
31-AUG-10
3847.5
3307.5
4016.25
1250
1600
1500
950
1250
3000
800
3000
1100
1300
2500
-NA-NA-NA1400
300
0
-NA500
-NA-NA-NA-NA-NA-NA-
5
3001
9999
5 Rows Processed So Far...
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
10
11
12
13*
SQL>
Procedure created.
SQL> EXEC OddNumber(10, 25)
The Odd Number : 11
The Odd Number : 13
The Odd Number : 15
The Odd Number : 17
The Odd Number : 19
The Odd Number : 21
The Odd Number : 23
PL/SQL procedure successfully completed.
SQL> EXEC OddNumber(25, 10)
PL/SQL procedure successfully completed.
SQL> EXEC OddNumber(Num2 => 25, Num1 => 10)
The Odd Number : 11
The Odd Number : 13
The Odd Number : 15
The Odd Number : 17
The Odd Number : 19
The Odd Number : 21
The Odd Number : 23
PL/SQL procedure successfully completed.
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
Procedure created.
SQL> EXEC OddNumber(20);
The Odd Number : 21
The Odd Number : 23
The Odd Number : 25
The Odd Number : 27
The Odd Number : 29
PL/SQL procedure successfully completed.
SQL> EXEC OddNumber(20, 40);
The Odd Number : 21
The Odd Number : 23
The Odd Number : 25
The Odd Number : 27
The Odd Number : 29
The Odd Number : 31
The Odd Number : 33
The Odd Number : 35
The Odd Number : 37
The Odd Number : 39
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> CREATE OR REPLACE PROCEDURE
2 FindEmp
3 (I_Empno IN NUMBER,
4
O_Ename OUT VARCHAR2,
5
O_Job OUT VARCHAR2)
6 AS
7 BEGIN
8 SELECT Ename, Job INTO O_Ename, O_Job
9 FROM Emp WHERE Empno = I_Empno;
10 EXCEPTION
11 WHEN NO_DATA_FOUND THEN
12 DBMS_OUTPUT.PUT_LINE('Error in Finding the Details of Employee Number : '||
I_Empno);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
13
14
END FindEmp;
/
Procedure created.
SQL> DECLARE
2 V_Ename Emp.Ename%TYPE;
3 V_Job Emp.Job%TYPE;
4 BEGIN
5 FindEmp(7839, V_Ename, V_Job);
6 DBMS_OUTPUT.PUT_LINE('Employee 7839 is : '|| V_Ename||',
7 END;
8 /
Employee 7839 is : KING, PRESIDENT.
'||V_Job||'.');
Procedure created.
SQL> EXEC EmpInfo(10)
Employee Name : KING
Employee Job : PRESIDENT
Employee Salary : 7000
Employee Comission :
************************************
Employee Name : CLARK
Employee Job : MANAGER
Employee Salary : 3307.5
Employee Comission :
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
************************************
Employee Name : MILLER
Employee Job : CLERK
Employee Salary : 1300
Employee Comission :
************************************
Number of Employees : 3
Total Salary : 11607.5
Maximum Salary : 7000
Average Salary : 3869.17
PL/SQL procedure successfully completed.
SQL> /
Procedure created.
SQL> EXEC EmpInfo(20)
Employee Name : JONES
Employee Job : MANAGER
Employee Salary : 4016.25
Employee Comission :
************************************
Employee Name : FORD
Employee Job : ANALYST
Employee Salary : 3000
Employee Comission :
************************************
Employee Name : SMITH
Employee Job : CLERK
Employee Salary : 800
Employee Comission :
************************************
Employee Name : SCOTT
Employee Job : ANALYST
Employee Salary : 3000
Employee Comission :
************************************
Employee Name : ADAMS
Employee Job : CLERK
Employee Salary : 1100
Employee Comission :
************************************
Number of Employees : 5
Total Salary : 11916.25
Maximum Salary : 4016.25
Average Salary : 2383.25
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> <<EmpInfo>>
2 DECLARE
3 CURSOR EmpInfoCursor IS
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for i_deptno: 20
Employee Name : JONES
Employee Job : MANAGER
Employee Salary : 4016.25
Employee Comission :
************************************
Employee Name : FORD
Employee Job : ANALYST
Employee Salary : 3000
Employee Comission :
************************************
Employee Name : SMITH
Employee Job : CLERK
Employee Salary : 800
Employee Comission :
************************************
Employee Name : SCOTT
Employee Job : ANALYST
Employee Salary : 3000
Employee Comission :
************************************
Employee Name : ADAMS
Employee Job : CLERK
Employee Salary : 1100
Employee Comission :
************************************
Number of Employees : 5
Total Salary : 11916.25
Maximum Salary : 4016.25
Average Salary : 2383.25
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 ValidateRecordValues
ValidateInsertValues;
21 TYPE CheckBits
22 IS
23 RECORD
24 (
25
CheckJobBit
BOOLEAN,
26
CheckDeptnoBit
BOOLEAN,
27
CheckMGRBit
BOOLEAN,
28
CheckHireDateBit BOOLEAN,
29
CheckSalBit
BOOLEAN
30
);
31 CheckBitsInstance CheckBits;
32 E_ForiegnKey EXCEPTION;
33 PRAGMA EXCEPTION_INIT(E_ForiegnKey, -2292);
34 E_NotNULLViolation EXCEPTION;
35 PRAGMA EXCEPTION_INIT(E_NotNULLViolation, -1400);
36 E_CheckViolation
EXCEPTION;
37 PRAGMA EXCEPTION_INIT(E_CheckViolation, -2290);
38 BEGIN
39 CheckJob(PJob, CheckBitsInstance.CheckJobBit);
40 CheckDeptno(PDeptno, CheckBitsInstance.CheckDeptnoBit);
41 CheckMGRNO(PMGR, CheckBitsInstance.CheckMGRBit);
42 CheckHireDate(PHireDate, CheckBitsInstance.CheckHireDateBit);
43 CheckSalary(PSal, CheckBitsInstance.CheckSalBit);
44 IF CheckBitsInstance.CheckJobBit THEN
45
IF CheckBitsInstance.CheckDeptnoBit THEN
46
IF CheckBitsInstance.CheckMGRBit THEN
47
IF CheckBitsInstance.CheckHireDateBit THEN
48
IF CheckBitsInstance.CheckSalBit THEN
49
INSERT INTO Emp(Empno, Ename, Job, Sal, Comm,
Deptno, MGR, HireDate)
50
VALUES(PEmpno, PEname, PJob, PSal, PComm, PDeptno,
PMGR, PHireDate);
51
COMMIT;
52
DBMS_OUTPUT.PUT_LINE('Your Record is Inserted
Sucessfully...');
53
ELSE
54
DBMS_OUTPUT.PUT_LINE('Insert Failed Due To Problem
in Salary Values Out of Range');
55
END IF;
56
ELSE
57
DBMS_OUTPUT.PUT_LINE('Insert Failed Due To Problem in
Hire Date Not Matching With Server Standards.');
58
END IF;
59
ELSE
60
DBMS_OUTPUT.PUT_LINE('Insert Failed Due To Problem in Manager
Number Not Matching With Business Standards.');
61
END IF;
62
ELSE
63
DBMS_OUTPUT.PUT_LINE('Insert Failed Due To Problem in Department
Number Not Available in The Master.');
64
END IF;
65 ELSE
66
DBMS_OUTPUT.PUT_LINE('Insert Failed Due To Problem in Designation Not
Suitable To The Organization.');
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
67 END IF;
68 EXCEPTION
69 WHEN DUP_VAL_ON_INDEX THEN
70 DBMS_OUTPUT.PUT_LINE('Sorry, The Field With Unique Value is Getting
Duplicated. Hence Insert is Cancelled.');
71 ROLLBACK;
72 WHEN E_CheckViolation THEN
73 DBMS_OUTPUT.PUT_LINE('A Field with Check Constraint is not Attended
Properly, Please Check Properly. Hence Insert is Cancelled.');
74 ROLLBACK;
75 WHEN E_NotNULLViolation THEN
76 DBMS_OUTPUT.PUT_LINE('A Field which Cannot be NULL, is not attended, Please
Check Properly. Hence Insert is Cancelled.');
77 ROLLBACK;
78 WHEN E_ForiegnKey THEN
79 DBMS_OUTPUT.PUT_LINE('A Field is Violating The Parent Child Relation. Hence
Insert is Cancelled.');
80 ROLLBACK;
81 END EmployeeInsert;
82 /
Warning: Procedure created with compilation errors.
SQL> SHOW ERRORS
Errors for PROCEDURE EMPLOYEEINSERT:
LINE/COL ERROR
-------- ----------------------------------------------------------------39/1
PL/SQL: Statement ignored
39/1
PLS-00201: identifier 'CHECKJOB' must be declared
40/1
PL/SQL: Statement ignored
40/1
PLS-00201: identifier 'CHECKDEPTNO' must be declared
41/1
PL/SQL: Statement ignored
41/1
PLS-00201: identifier 'CHECKMGRNO' must be declared
42/1
PL/SQL: Statement ignored
42/1
PLS-00201: identifier 'CHECKHIREDATE' must be declared
43/1
PL/SQL: Statement ignored
43/1
PLS-00201: identifier 'CHECKSALARY' must be declared
SQL> CREATE OR REPLACE PROCEDURE
2 CheckJob(PCheckJob IN Emp.Job%TYPE, PChkBit OUT BOOLEAN)
3 IS
4 V_JobExists
NUMBER(2);
5 V_Job
Emp.Job%TYPE;
6 E_NoJob
EXCEPTION;
7 BEGIN
8 SELECT
9
COUNT(*)
10 INTO
11
V_JobExists
12 FROM Emp
13 WHERE Job = PCheckJob;
14 IF V_JobExists = 0
15 THEN
16
RAISE E_NoJob;
17 ELSE
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
18 SELECT
19
DISTINCT Job
20 INTO
21
V_Job
22 FROM Emp
23 WHERE Job = PCheckJob;
24 DBMS_OUTPUT.PUT_LINE('Success! '||V_Job||' is Found...');
25 PChkBit := TRUE;
26 END IF;
27 EXCEPTION
28 WHEN E_NoJob THEN
29 DBMS_OUTPUT.PUT_LINE('Sorry, The Job '||PCheckJob||' To be Inserted is Not
Acceptable.');
30 ROLLBACK;
31 END CheckJob;
32 /
Procedure created.
SQL> ALTER PROCEDURE EMPLOYEEINSERT COMILE;
ALTER PROCEDURE EMPLOYEEINSERT COMILE
*
ERROR at line 1:
ORA-00922: missing or invalid option
17 ELSE
18 SELECT
19
DISTINCT MGR
20 INTO
21
V_MgrNo
22 FROM Emp
23 WHERE MGR = PCheckMGRNO;
24 DBMS_OUTPUT.PUT_LINE('Success! '||V_MgrNo||' is Found...');
25 PChkBit := TRUE;
26 END IF;
27 EXCEPTION
28 WHEN E_InvalidManager THEN
29 DBMS_OUTPUT.PUT_LINE('Sorry, The Manager Number '||PCheckMGRNO||' To be
Inserted is Not Acceptable.');
30 ROLLBACK;
31 END CheckMGRNO;
32 /
Procedure created.
SQL> ALTER PROCEDURE EMPLOYEEINSERT COMPILE;
Warning: Procedure altered with compilation errors.
SQL> SHOW ERRORS
Errors for PROCEDURE EMPLOYEEINSERT:
LINE/COL ERROR
-------- ----------------------------------------------------------------42/1
PL/SQL: Statement ignored
42/1
PLS-00201: identifier 'CHECKHIREDATE' must be declared
43/1
PL/SQL: Statement ignored
43/1
PLS-00201: identifier 'CHECKSALARY' must be declared
SQL> CREATE OR REPLACE PROCEDURE
2 CheckHireDate(PCheckHireDate IN Emp.HireDate%TYPE, PChkBit OUT BOOLEAN)
3 IS
4 V_CurrentDate
Emp.HireDate%TYPE;
5 E_InvalidHireDate
EXCEPTION;
6 BEGIN
7 SELECT
8 SYSDATE
9 INTO
10 V_CurrentDate
11 FROM DUAL;
12 V_CurrentDate := TO_DATE(TO_CHAR(V_CurrentDate, 'DD-MON-YY'), 'DD-MON-YY');
13 IF V_CurrentDate <> PCheckHireDate
14 THEN
15
RAISE E_InvalidHireDate;
16 ELSE
17 DBMS_OUTPUT.PUT_LINE('Success! '||V_CurrentDate||' Matches The Server
Clock.');
18 PChkBit := TRUE;
19 END IF;
20 EXCEPTION
21 WHEN E_InvalidHireDate THEN
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Procedure altered.
SQL> DECLARE
2 V_Empno
Emp.Empno%TYPE := &Empno;
3 V_Ename
Emp.Ename%TYPE := '&Ename';
4 V_Job
Emp.Job%TYPE := '&Job';
5 V_Sal
Emp.Sal%TYPE := &Sal;
6 V_Comm
Emp.Comm%TYPE := &Commission;
7 V_Deptno
Emp.Deptno%TYPE := &Deptno;
8 V_MGR
Emp.MGR%TYPE := &MGR;
9 V_HireDate
Emp.HireDate%TYPE := '&HireDate';
10 BEGIN
11 EmployeeInsert(V_Empno, V_Ename, V_Job, V_Sal, V_Comm, V_Deptno, V_MGR,
V_HireDate);
12 END;
13 /
Enter value for empno: 1235
Enter value for ename: SAMPLE
Enter value for job: CLERK
Enter value for sal: 2500
Enter value for commission: NULL
Enter value for deptno: 30
Enter value for mgr: 7566
Enter value for hiredate: 31-AUG-10
Success! CLERK is Found...
Success! 30 is Found...
Success! 7566 is Found...
Success! 31-AUG-10 Matches The Server Clock.
Success! The Salary 2500 is Acceptable.
Your Record is Inserted Sucessfully...
PL/SQL procedure successfully completed.
SQL> /
Enter value for empno: 1236
Enter value for ename: SAMPLE
Enter value for job: SRCLERK
Enter value for sal: 2000
Enter value for commission: NULL
Enter value for deptno: 80
Enter value for mgr: 7654
Enter value for hiredate: 28-AUG-10
Sorry, The Job SRCLERK To be Inserted is Not Acceptable.
Sorry, The Department Number 80 To be Inserted is Not Acceptable.
Sorry, The Manager Number 7654 To be Inserted is Not Acceptable.
Sorry, The Hire Date 28-AUG-10 To be Inserted is Not Acceptable.
Success! The Salary 2000 is Acceptable.
Insert Failed Due To Problem in Designation Not Suitable To The Organization.
PL/SQL procedure successfully completed.
SQL> SPOOL OFF
SQL> cl scr
SQL> CREATE OR REPLACE FUNCTION
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
2
3
4
5
6
7
8
9
10
11
12
13
Factorial(Num NUMBER)
RETURN NUMBER
IS
Fact NUMBER(4) := 1;
BEGIN
FOR MyIndex IN REVERSE 1..Num
LOOP
Fact := Fact * MyIndex;
END LOOP;
RETURN Fact;
END;
/
Function created.
SQL> EXEC Factorial(5)
BEGIN Factorial(5); END;
*
ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00221: 'FACTORIAL' is not a procedure or is undefined
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
SQL> cl scr
SQL> SELECT Factorial(5) Fact FROM DUAL;
FACT
---------120
SQL> CREATE TABLE SampFun
2 (
3
SampID NUMBER(2),
4
SampFact NUMBER(4)
5 );
Table created.
SQL> INSERT INTO SampFun
2 VALUES(1, Factorial(1));
1 row created.
SQL> INSERT INTO SampFun
2 VALUES(2, Factorial(2));
1 row created.
SQL> INSERT INTO SampFun
2 VALUES(3, Factorial(3));
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL> INSERT INTO SampFun
2 VALUES(4, Factorial(4));
1 row created.
SQL> INSERT INTO SampFun
2 VALUES(5, Factorial(5));
1 row created.
SQL> SELECT * FROM SampFun;
SAMPID
SAMPFACT
---------- ---------1
1
2
2
3
6
4
24
5
120
SQL>
2
3
4
UPDATE SampFun
SET
SampFact = Factorial(5)
WHERE SampID = 3;
1 row updated.
SQL> SELECT * FROM SampFun;
SAMPID
SAMPFACT
---------- ---------1
1
2
2
3
120
4
24
5
120
SQL>
2
3
4
UPDATE SampFun
SET
SampFact = Factorial(5)
WHERE SampFact = Factorial(4);
1 row updated.
SQL> SELECT * FROM SampFun;
SAMPID
SAMPFACT
---------- ---------1
1
2
2
3
120
4
120
5
120
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> cl scr
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> DECLARE
2 V_Factorial NUMBER(4) := 0;
3 BEGIN
4 V_Factorial := Factorial(5);
5 DBMS_OUTPUT.PUT_LINE('The Factorial is : '||V_Factorial);
6 END;
7 /
The Factorial is : 120
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
Function created.
SQL> SELECT Combination(6, 2) Combi FROM DUAl;
COMBI
---------15
SQL> DROP FUNCTION Factorial;
Function dropped.
SQL> SELECT Combination(6, 2) Combi FROM DUAl;
SELECT Combination(6, 2) Combi FROM DUAl
*
ERROR at line 1:
ORA-06575: Package or function COMBINATION is in an invalid state
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
END;
/
Function created.
SQL> SELECT Combination(6, 2) Combi FROM DUAl;
COMBI
---------15
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
Function created.
SQL> SELECT Ename, HireDate, MONTHS_BETWEEN(SYSDATE, HireDate) / 12 EmpExp
2 FROM Emp
3 WHERE Empno = 7839;
ENAME
HIREDATE
EMPEXP
---------- --------- ---------KING
17-NOV-81 28.7912641
SQL> SELECT Ename, HireDate, EmpExp(Empno) EmpExp
2 FROM Emp
3 WHERE Empno = 7839;
ENAME
HIREDATE
EMPEXP
---------- --------- ---------KING
17-NOV-81
28.79
SQL> SELECT Ename, HireDate, EmpExp(Empno) EmpExp
2 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
HIREDATE
EMPEXP
--------- ---------17-NOV-81
28.79
01-MAY-81
29.33
09-JUN-81
29.23
02-APR-81
29.41
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
28-SEP-81
20-FEB-81
08-SEP-81
03-DEC-81
22-FEB-81
03-DEC-81
17-DEC-80
28.93
29.53
28.98
28.75
29.53
28.75
29.71
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
EMPEXP
--------- ---------09-DEC-82
27.73
12-JAN-83
27.64
23-JAN-82
28.61
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Function created.
SQL> SELECT Ename, Sal, Comm, EmpTotSal(Empno) TotSal, HireDate, EmpExp(Empno)
EmpExp
2 FROM Emp;
ENAME
SAL
COMM
TOTSAL HIREDATE
EMPEXP
---------- ---------- ---------- ---------- --------- ---------KING
5000
5000 17-NOV-81
28.79
BLAKE
2850
2850 01-MAY-81
29.33
CLARK
2450
2450 09-JUN-81
29.23
JONES
2975
2975 02-APR-81
29.41
MARTIN
1250
1400
2650 28-SEP-81
28.93
ALLEN
1600
300
1900 20-FEB-81
29.53
TURNER
1500
0
1500 08-SEP-81
28.98
JAMES
950
950 03-DEC-81
28.75
WARD
1250
500
1750 22-FEB-81
29.53
FORD
3000
3000 03-DEC-81
28.75
SMITH
800
800 17-DEC-80
29.71
ENAME
SAL
COMM
TOTSAL HIREDATE
EMPEXP
---------- ---------- ---------- ---------- --------- ---------SCOTT
3000
3000 09-DEC-82
27.73
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ADAMS
MILLER
1100
1300
1100 12-JAN-83
1300 23-JAN-82
27.64
28.61
14 rows selected.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Procedure created.
SQL> EXEC EmpInfo(10)
Employee Name : KING
Employee Job : PRESIDENT
Employee Salary : 5000
Employee Comission :
Employee's Experiance : 28.79
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
************************************
Employee Name : CLARK
Employee Job : MANAGER
Employee Salary : 2450
Employee Comission :
Employee's Experiance : 29.23
************************************
Employee Name : MILLER
Employee Job : CLERK
Employee Salary : 1300
Employee Comission :
Employee's Experiance : 28.61
************************************
Number of Employees : 3
Total Salary : 8750
Maximum Salary : 5000
Average Salary : 2916.67
PL/SQL procedure successfully completed.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
Function created.
SQL> SELECT GetDeptDetails(10) Dept10Det FROM DUAL;
SELECT GetDeptDetails(10) Dept10Det FROM DUAL
*
ERROR at line 1:
ORA-00902: invalid datatype
SQL> DECLARE
2 V_DeptRec Dept%ROWTYPE;
3 BEGIN
4 V_DeptRec.Deptno := &GDeptno;
5 V_DeptRec := GetDeptDetails(V_DeptRec.Deptno);
6 DBMS_OUTPUT.PUT_LINE(V_DeptRec.Deptno||' '||V_DeptRec.DName||'
'||V_DeptRec.Loc);
7 END;
8 /
Enter value for gdeptno: 10
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Package created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 END ProdSeries;
31 PROCEDURE PrintEvenOdd(Num1 NUMBER, Num2 NUMBER)
32 IS
33 V_Num1 NUMBER;
34 EvenValue VARCHAR2(1000);
35 OddValue VARCHAR2(1000);
36 BEGIN
37 V_Num1 := Num1;
38 WHILE V_Num1 < Num1
39 LOOP
40 IF MOD(V_Num1,2) != 0 THEN
41 OddValue := OddValue||' '||V_Num1;
42 ELSE
43 EvenValue := EvenValue||' '||V_Num1;
44 END IF;
45 V_Num1 := V_Num1 + 1;
46 END LOOP;
47 DBMS_OUTPUT.PUT_LINE('The Odd Numbers in The Series are : '||OddValue);
48 DBMS_OUTPUT.PUT_LINE('The Even Numbers in The Series are : '||EvenValue);
49 END PrintEvenOdd;
50 PROCEDURE SquareArea(Side IN NUMBER)
51 IS
52 BEGIN
53 DBMS_OUTPUT.PUT_LINE('Area of The Square = ' || (Side * Side) );
54 END;
55 PROCEDURE CubeVolume(Radius IN NUMBER)
56 IS
57 BEGIN
58 DBMS_OUTPUT.PUT_LINE('Volume of The Cube = ' || (Radius * Radius *
Radius));
59 END;
60 END MathsBody;
61 /
Package body created.
SQL> SELECT Factorial(5) FROM DUAl;
FACTORIAL(5)
-----------120
SQL> SELECT MathsBody.Factorial(5) FROM DUAl;
MATHSBODY.FACTORIAL(5)
---------------------120
SQL> DROP FUNCTION Factorial;
Function dropped.
SQL> SELECT Factorial(5) FROM DUAl;
SELECT Factorial(5) FROM DUAl
*
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ERROR at line 1:
ORA-00904: "FACTORIAL": invalid identifier
Package created.
SQL> CREATE OR REPLACE PACKAGE BODY EmpPackage
2 IS
3 PROCEDURE MyBonus
4 AS
5 CURSOR DeptCursor IS
6 SELECT Deptno FROm Dept;
7 BEGIN
8 FOR R_GroupBonus IN DeptCursor LOOP
9 UPDATE Emp
10 SET Sal = Sal * 0.95
11 WHERE Deptno = R_GroupBonus.DeptNo;
12 DBMS_OUTPUT.PUT_LINe('The Bonus Information is '||R_GroupBonus.Deptno);
13 END LOOP;
14 END MyBonus;
15 PROCEDURE FindEmp
16 (I_Empno IN NUMBER,
17
O_Ename OUT VARCHAR2,
18
O_Job OUT VARCHAR2)
19 AS
20 BEGIN
21 SELECT Ename, Job INTO O_Ename, O_Job
22 FROM Emp WHERE Empno = I_Empno;
23 EXCEPTION
24 WHEN NO_DATA_FOUND THEN
25 DBMS_OUTPUT.PUT_LINE('Error in Finding the Details of Employee Number : '||
I_Empno);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
END FindEmp;
PROCEDURE EmpInfo(I_Deptno IN NUMBER)
AS
CURSOR EmpInfoCursor IS
SELECT Ename, Job, Sal, Comm
FROM Emp
WHERE Deptno = I_Deptno;
EmpRecord EmpInfoCursor%ROWTYPE;
NEmployees NUMBER := 0;
TSalary NUMBER := 0;
AVGSalary NUMBER(7,2) := 0;
MAXSalary NUMBER(7,2) := 0;
BEGIN
OPEN EmpInfoCursor;
LOOP
FETCH EmpInfoCursor INTO EmpRecord;
EXIT WHEN EmpInfoCursor%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('Employee Name : '||EmpRecord.Ename);
DBMS_OUTPUT.PUT_LINE('Employee Job : '||EmpRecord.Job);
DBMS_OUTPUT.PUT_LINE('Employee Salary : '||EmpRecord.Sal);
DBMS_OUTPUT.PUT_LINE('Employee Comission : '||EmpRecord.Comm);
DBMS_OUTPUT.PUT_LINE('************************************');
TSalary := TSalary + EmpRecord.Sal;
NEmployees := NEmployees + 1;
IF EmpRecord.Sal > MAXSalary THEN
MAXSalary := EmpRecord.Sal;
END IF;
END LOOP;
AVGSalary := TSalary / NEmployees;
DBMS_OUTPUT.PUT_LINE('Number of Employees : '||NEmployees);
DBMS_OUTPUT.PUT_LINE('Total Salary : '||TSalary);
DBMS_OUTPUT.PUT_LINE('Maximum Salary : '||MAXSalary);
DBMS_OUTPUT.PUT_LINE('Average Salary : '||AVGSalary);
CLOSE EmpInfoCursor;
END EmpInfo;
FUNCTION EmpExp(V_Empno NUMBER)
RETURN NUMBER
IS
V_HireDate Emp.HireDate%TYPE;
V_Exp NUMBER(4,2) := 1;
BEGIN
SELECT HireDate INTO V_HireDate
FROM Emp
WHERE Empno = V_Empno;
V_Exp := MONTHS_BETWEEN(SYSDATE,V_HireDate) / 12;
RETURN V_Exp;
END EmpExp;
FUNCTION EmpGrade(I_Grade NUMBER)
RETURN VARCHAR2
IS
V_Num NUMBER(4);
BEGIN
SELECT COUNT(*) INTO V_Num
FROM Emp, SalGrade
WHERE Sal BETWEEN LoSal AND HiSal AND
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
81
82
83
84
85
Grade = I_Grade;
RETURN 'The Total Employees For The Grade Given By You Are : '||V_Num;
END EmpGrade;
END EmpPackage;
/
HIREDATE
EMPEXP
--------- ---------17-NOV-81
28.79
01-MAY-81
29.33
09-JUN-81
29.23
02-APR-81
29.41
28-SEP-81
28.93
20-FEB-81
29.53
08-SEP-81
28.98
03-DEC-81
28.75
22-FEB-81
29.53
03-DEC-81
28.75
17-DEC-80
29.71
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
EMPEXP
--------- ---------09-DEC-82
27.73
12-JAN-83
27.64
23-JAN-82
28.61
14 rows selected.
SQL> SELECT Ename, HireDate, EmpPackage.EmpExp(Empno) EmpExp
2 FROM Emp;
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
HIREDATE
EMPEXP
--------- ---------17-NOV-81
28.79
01-MAY-81
29.33
09-JUN-81
29.23
02-APR-81
29.41
28-SEP-81
28.93
20-FEB-81
29.53
08-SEP-81
28.98
03-DEC-81
28.75
22-FEB-81
29.53
03-DEC-81
28.75
17-DEC-80
29.71
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
EMPEXP
--------- ---------09-DEC-82
27.73
12-JAN-83
27.64
23-JAN-82
28.61
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
14 rows selected.
SQL> DROP FUNCTION EMPEXP;
Function dropped.
SQL> SELECT Ename, HireDate, EmpExp(Empno) EmpExp
2 FROM Emp;
SELECT Ename, HireDate, EmpExp(Empno) EmpExp
*
ERROR at line 1:
ORA-00904: "EMPEXP": invalid identifier
HIREDATE
EMPEXP
--------- ---------17-NOV-81
28.79
01-MAY-81
29.33
09-JUN-81
29.23
02-APR-81
29.41
28-SEP-81
28.93
20-FEB-81
29.53
08-SEP-81
28.98
03-DEC-81
28.75
22-FEB-81
29.53
03-DEC-81
28.75
17-DEC-80
29.71
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
EMPEXP
--------- ---------09-DEC-82
27.73
12-JAN-83
27.64
23-JAN-82
28.61
14 rows selected.
SQL> SPOOL OFF
SQL> cl scr
SQL> SET VERIFY OFF
SQL> SET SERVEROUTPUT ON
SQL> cl scr
SQL> SELECT MathsBody.Factorial(5) Fact FROM DUAL;
FACT
---------120
SQL> SELECT MathsBody.Combination(6, 2) Combi FROM DUAL;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
COMBI
---------15
SQL>
2
3
4
5
6
7
8
9
10
Package created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 LOOP
40 IF MOD(V_Num1,2) != 0 THEN
41 OddValue := OddValue||' '||V_Num1;
42 ELSE
43 EvenValue := EvenValue||' '||V_Num1;
44 END IF;
45 V_Num1 := V_Num1 + 1;
46 END LOOP;
47 DBMS_OUTPUT.PUT_LINE('The Odd Numbers in The Series are : '||OddValue);
48 DBMS_OUTPUT.PUT_LINE('The Even Numbers in The Series are : '||EvenValue);
49 END PrintEvenOdd;
50 PROCEDURE SquareArea(Side IN NUMBER)
51 IS
52 BEGIN
53 DBMS_OUTPUT.PUT_LINE('Area of The Square = ' || (Side * Side) );
54 END;
55 PROCEDURE CubeVolume(Radius IN NUMBER)
56 IS
57 BEGIN
58 DBMS_OUTPUT.PUT_LINE('Volume of The Cube = ' || (Radius * Radius *
Radius));
59 END;
60 END MathsBody;
61 /
Package body created.
SQL> SELECT MathsBody.Factorial(5) Fact FROM DUAL;
SELECT MathsBody.Factorial(5) Fact FROM DUAL
*
ERROR at line 1:
ORA-00904: "MATHSBODY"."FACTORIAL": invalid identifier
HIREDATE
EMPEXP
--------- ---------17-NOV-81
28.79
01-MAY-81
29.34
09-JUN-81
29.23
02-APR-81
29.42
28-SEP-81
28.93
20-FEB-81
29.54
08-SEP-81
28.98
03-DEC-81
28.75
22-FEB-81
29.53
03-DEC-81
28.75
17-DEC-80
29.71
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
EMPEXP
--------- ---------09-DEC-82
27.73
12-JAN-83
27.64
23-JAN-82
28.61
14 rows selected.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
75
76
77
78
79
80
81
82
83
84
85
86
87
88
END EmpExp;
FUNCTION EmpGrade(I_Grade NUMBER)
RETURN VARCHAR2
IS
V_Num NUMBER(4);
BEGIN
SELECT COUNT(*) INTO V_Num
FROM Emp, SalGrade
WHERE Sal BETWEEN LoSal AND HiSal AND
Grade = I_Grade;
RETURN 'The Total Employees For The Grade Given By You Are : '||V_Num;
END EmpGrade;
END EmpPackage;
/
HIREDATE
EMPEXP
--------- ---------17-NOV-81
28.79
01-MAY-81
29.34
09-JUN-81
29.23
02-APR-81
29.42
28-SEP-81
28.93
20-FEB-81
29.54
08-SEP-81
28.98
03-DEC-81
28.75
22-FEB-81
29.53
03-DEC-81
28.75
17-DEC-80
29.71
ENAME
---------SCOTT
ADAMS
MILLER
HIREDATE
EMPEXP
--------- ---------09-DEC-82
27.73
12-JAN-83
27.64
23-JAN-82
28.61
14 rows selected.
SQL> EXEC EmpPackage.EmpInfo(10);
Employee Name : KING
Employee Job : PRESIDENT
Employee Salary : 5000
Employee Comission :
Employee Experience : 28.79
************************************
Employee Name : CLARK
Employee Job : MANAGER
Employee Salary : 2450
Employee Comission :
Employee Experience : 29.23
************************************
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Package created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
79
80
81
82
83
84
85
86
87
88
V_Num NUMBER(4);
BEGIN
SELECT COUNT(*) INTO V_Num
FROM Emp, SalGrade
WHERE Sal BETWEEN LoSal AND HiSal AND
Grade = I_Grade;
RETURN 'The Total Employees For The Grade Given By You Are : '||V_Num;
END EmpGrade;
END EmpPackage;
/
Package created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
BEGIN
Emp_SQLSMTMT := 'SELECT * FROM Emp';
OPEN V_EmpResultSet FOR Emp_SQLSMTMT;
RETURN V_EmpResultSet;
END FunctionEmpResultSet;
/
Function created.
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
SELECT
FUNCTIONEMPRESULTSET
-------------------CURSOR STATEMENT : 1
CURSOR STATEMENT : 1
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ---------- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ---------- --------- ----- ----- ---------ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> ED
Wrote file afiedt.buf
1
2
3
4
5
6
7
8
9
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ---------- --------- ----- ----- ---------PRESIDENT
17-NOV-81 5000
10
MANAGER
7839 01-MAY-81 2850
30
MANAGER
7839 09-JUN-81 2450
10
MANAGER
7839 02-APR-81 2975
20
SALESMAN
7698 28-SEP-81 1250 1400
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
ANALYST
7566 03-DEC-81 3000
20
CLERK
7902 17-DEC-80
800
20
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
JOB
MGR HIREDATE
SAL COMM
DEPTNO
--------- ---------- --------- ----- ----- ---------ANALYST
7566 09-DEC-82 3000
20
CLERK
7788 12-JAN-83 1100
20
CLERK
7782 23-JAN-82 1300
10
14 rows selected.
SQL> /
Enter value for givequery: SELECT * FROM Dept
FUNCTIONEMPRESULTSET
-------------------CURSOR STATEMENT : 1
CURSOR STATEMENT : 1
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
SQL> /
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> /
Enter value for givequery: SELECT Ename, Dname, Sal, Grade FROM Emp, Dept,
SalGrade WHERE Emp.Deptno = Dept.Deptno AND Emp.Sal BETWEEN LoSal AND HiSal
FUNCTIONEMPRESULTSET
-------------------CURSOR STATEMENT : 1
CURSOR STATEMENT : 1
ENAME
---------SMITH
JAMES
ADAMS
MARTIN
WARD
MILLER
TURNER
ALLEN
CLARK
BLAKE
JONES
DNAME
SAL
GRADE
-------------- ----- ---------RESEARCH
800
1
SALES
950
1
RESEARCH
1100
1
SALES
1250
2
SALES
1250
2
ACCOUNTING
1300
2
SALES
1500
3
SALES
1600
3
ACCOUNTING
2450
4
SALES
2850
4
RESEARCH
2975
4
ENAME
---------FORD
SCOTT
KING
DNAME
SAL
GRADE
-------------- ----- ---------RESEARCH
3000
4
RESEARCH
3000
4
ACCOUNTING
5000
5
14 rows selected.
SQL> cl scr
SQL> CREATE OR REPLACE PACKAGE Employee_RefCur_PKG
2 AS
3 TYPE EmpCursor IS REF CURSOR;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
6
7
8
9
10
PROCEDURE
EmployeeSearch
(
IN_EName
IN VARCHAR2,
OUT_EmpCursor OUT EmpCursor);
END Employee_RefCur_PKG;
/
Package created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
DECLARE
O_EmpCursor Employee_RefCur_PKG.EmpCursor;
TYPE RefData IS RECORD
(
Empno Emp.Empno%TYPE,
Ename Emp.Ename%TYPE,
Job Emp.Job%TYPE,
Sal Emp.Sal%TYPE,
Dname Dept.Dname%TYPE,
Loc Dept.Loc%TYPE
);
MyRefData RefData;
IN_EName VARCHAR2(10) := '&GName';
TYPE MyArray IS
TABLE OF
MyRefData%TYPE;
V_MyArray MyArray;
BEGIN
Employee_RefCur_PKG.EmployeeSearch(IN_EName, O_EmpCursor);
FETCH O_EmpCursor BULK COLLECT INTO V_MyArray;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
21 CLOSE O_EmpCursor;
22 FOR LoopIndex IN 1 .. V_MyArray.Count
23 LOOP
24 DBMS_OUTPUT.PUT_LINE(V_MyArray(LoopIndex).Empno||',
'||V_MyArray(LoopIndex).Ename||', '|| V_MyArray(LoopIndex).Job||',
'||V_MyArray(LoopIndex).Sal||', '||V_MyArray(LoopIndex).Dname||', '||
V_MyArray(LoopIndex).Loc);
25 END LOOP;
26 END;
27 /
Enter value for gname: Smith
7369, SMITH, CLERK, 800, RESEARCH, DALLAS
PL/SQL procedure successfully completed.
SQL> /
Enter value for gname: S
7876, ADAMS, CLERK, 1100, RESEARCH, DALLAS
7900, JAMES, CLERK, 950, SALES, CHICAGO
7566, JONES, MANAGER, 2975, RESEARCH, DALLAS
7788, SCOTT, ANALYST, 3000, RESEARCH, DALLAS
7369, SMITH, CLERK, 800, RESEARCH, DALLAS
PL/SQL procedure successfully completed.
SQL> /
Enter value for gname: A
7876, ADAMS, CLERK, 1100, RESEARCH, DALLAS
7499, ALLEN, SALESMAN, 1600, SALES, CHICAGO
7698, BLAKE, MANAGER, 2850, SALES, CHICAGO
7782, CLARK, MANAGER, 2450, ACCOUNTING, NEW YORK
7900, JAMES, CLERK, 950, SALES, CHICAGO
7654, MARTIN, SALESMAN, 1250, SALES, CHICAGO
7521, WARD, SALESMAN, 1250, SALES, CHICAGO
PL/SQL procedure successfully completed.
SQL> cl scr
SQL> DELETE FROM Emp;
14 rows deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7 V_WeekDay := TO_CHAR(SYSDATE,'DY');
8 IF V_WeekDay = 'SAT' OR V_WeekDay = 'SUN' THEN
9 RAISE_APPLICATION_ERROR(-20010,'An Illegal Intrusion into the System was
Detected.');
10 END IF;
11 END;
12 /
Trigger created.
SQL> DELETE FROM Emp;
14 rows deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> DELETE FROM Emp;
DELETE FROM Emp
*
ERROR at line 1:
ORA-20010: An Illegal Intrusion into the System was Detected.
ORA-06512: at "SCOTT.WEEKENDCHECK", line 6
ORA-04088: error during execution of trigger 'SCOTT.WEEKENDCHECK'
SQL> cl scr
SQL> DROP TRIGGER WeekEndCheck;
Trigger dropped.
SQL> cl scr
SQL> DELETE FROm Emp;
14 rows deleted.
SQL> ROLLBACK;
Rollback complete.
SQL>
2
3
4
5
6
7
8
9
10
11
12
Trigger created.
SQL> DELETE FROm Emp;
DELETE FROm Emp
*
ERROR at line 1:
ORA-20011: Illegal Intrusion, Not Business Hours.
ORA-06512: at "SCOTT.ILLEGALTIME", line 6
ORA-04088: error during execution of trigger 'SCOTT.ILLEGALTIME'
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
Trigger created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
Trigger created.
SQL> DELETE FROM EMp
2 WHERE Empno = 7654;
An Illegal Intrusion into the System was Detected.
1 row deleted.
SQL> DELETE FROM EMp
2 WHERE Deptno = 30;
An Illegal Intrusion into
An Illegal Intrusion into
An Illegal Intrusion into
An Illegal Intrusion into
An Illegal Intrusion into
the
the
the
the
the
System
System
System
System
System
was
was
was
was
was
Detected.
Detected.
Detected.
Detected.
Detected.
5 rows deleted.
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> CREATE VIEW DeptView
2 AS
3 SELECT Deptno, Dname, Loc
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
4
5
FROM Dept
/
View created.
SQL> DESC DeptView
Name
Null?
----------------------------------------- -------DEPTNO
NOT NULL
DNAME
LOC
Type
---------------------------NUMBER(2)
VARCHAR2(14)
VARCHAR2(13)
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
CHENNAI
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT * FROm DeptView;
DEPTNO
---------10
20
30
40
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
4
5
6
7
8
9
BEGIN
DELETE FROM Dept
WHERE Deptno = :OLD.Deptno;
DBMS_OUTPUT.PUT_LINE('Trigger Fired, Data Deleted');
END;
/
Trigger created.
SQL> DELETE FROM DeptView
2 WHERE Deptno = 40;
Trigger Fired, Data Deleted
1 row deleted.
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
View created.
SQL> CREATE OR REPLACE TRIGGER Insert_Dept_Info
2 INSTEAD OF INSERT ON Employees_Dept_Info
3 DECLARE
4 V_DeptNo Dept.Deptno%TYPE;
5 Duplicate_Record EXCEPTION;
6 PRAGMA EXCEPTION_INIT(Duplicate_Record, -00001);
7 BEGIN
8 SELECT MAX(Deptno) INTO V_Deptno
9 FROM Dept;
10 V_Deptno := V_deptno + 10;
11 INSERT INTO Dept
12 VALUES(V_Deptno,:NEW.Dname, 'Not Confirmed');
13 EXCEPTION
14 WHEN Duplicate_Record THEN
15 RAISE_APPLICATION_ERROR(num=> -20107, msg=> 'Duplicated Department
Number!');
16 END Insert_Dept_Info;
17 /
Trigger created.
SQL> INSERT INTO Employees_Dept_Info
2 VALUES('SHIPPING', NULL);
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row created.
SQL> SELECT * FROm Dept;
DEPTNO
---------10
20
30
40
50
DNAME
-------------ACCOUNTING
RESEARCH
SALES
OPERATIONS
SHIPPING
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
Not Confirmed
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> DELETE FROM Emp
2 WHERE Deptno = 30;
6 rows deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Trigger created.
SQL> DELETE FROM Emp
2 WHERE Deptno = 30;
DELETE FROM Emp
*
ERROR at line 1:
ORA-20201: Table Status: READ ONLY.
ORA-06512: at "SCOTT.TAB_READONLY", line 2
ORA-04088: error during execution of trigger 'SCOTT.TAB_READONLY'
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
ENAME
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> cl scr
SQL> DROP TRIGGER Tab_ReadOnly;
Trigger dropped.
SQL> cl scr
SQL> CREATE TABLE EmpAudit
2 (
3
UserName VARCHAR2(20),
4
TranDate DATE,
5
TranTime DATE,
6
TranType VARCHAR2(10)
7 );
Table created.
SQL> COLUMN UserName FORMAT A10
SQL> cl sscr
SP2-0158: unknown CLEAR option "sscr"
SQL> cl scr
SQL> SELECT * FROM EmpAudit;
no rows selected
SQL>
2
3
4
5
6
7
8 V_TranType := 'Insert';
9 ELSIF UPDATING THEN
10 V_TranType := 'Update';
11 ELSE
12 V_TranType := 'Delete';
13 END IF;
14 INSERT INTO EmpAudit
15 VALUES(USER, TO_DATE(TO_CHAR(SYSDATE, 'DD-MON-YYYY'), 'DD-MON-YYYY'),
TO_DATE(TO_CHAR(SYSDATE, 'HH24:MI:SS'), 'HH24:MI:SS'), V_TranType);
16 END;
17 /
Trigger created.
SQL> DELETE FROM Emp
2 WHERE Empno = 7654;
1 row deleted.
SQL> SELECT * FROM EmpAudit;
USERNAME
TRANDATE TRANTIME TRANTYPE
---------- --------- --------- ---------SCOTT
03-SEP-10 01-SEP-10 Delete
SQL> DELETE FROM Emp
2 WHERE Deptno = 30;
5 rows deleted.
SQL> SELECT * FROM EmpAudit;
USERNAME
---------SCOTT
SCOTT
TRANDATE
--------03-SEP-10
03-SEP-10
TRANTIME
--------01-SEP-10
01-SEP-10
TRANTYPE
---------Delete
Delete
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13 V_TranType := 'Delete';
14 END IF;
15 INSERT INTO EmpAudit
16 VALUES(USER, TO_DATE(TO_CHAR(SYSDATE, 'DD-MON-YYYY'), 'DD-MON-YYYY'),
TO_DATE(TO_CHAR(SYSDATE, 'HH24:MI:SS'), 'HH24:MI:SS'), V_TranType);
17 END;
18 /
Trigger created.
SQL> DELETE FROM Emp
2 WHERE Empno = 7654;
1 row deleted.
SQL> SELECT * FROM EmpAudit;
USERNAME
TRANDATE TRANTIME TRANTYPE
---------- --------- --------- ---------SCOTT
03-SEP-10 01-SEP-10 Delete
SQL> DELETE FROM Emp
2 WHERE Deptno = 30;
5 rows deleted.
SQL> SELECT * FROM EmpAudit;
USERNAME
---------SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
SCOTT
TRANDATE
--------03-SEP-10
03-SEP-10
03-SEP-10
03-SEP-10
03-SEP-10
03-SEP-10
TRANTIME
--------01-SEP-10
01-SEP-10
01-SEP-10
01-SEP-10
01-SEP-10
01-SEP-10
TRANTYPE
---------Delete
Delete
Delete
Delete
Delete
Delete
6 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> cl scr
SQL> CREATE TABLE Emp_Audit_Table
2 (
3
AuditSeq
NUMBER,
4
UserName
VARCHAR2(10),
5
TimeTaran
DATE,
6
UserTerm
VARCHAR2(10),
7
TranType
VARCHAR2(10),
8
ProcDone
VARCHAR2(10),
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
9
10
Enum
NUMBER
);
Table created.
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
SELECT
no rows selected
SQL> CREATE SEQUENCE Audit_Seq;
Sequence created.
SQL> CREATE TABLE Audit_Table_Values
2 (
3
Audit_Seq
NUMBER,
4
ColumnName
VARCHAR2(10),
5
OldValue
NUMBER,
6
NewValue
NUMBER
7
);
Table created.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
USER,
Tran_Time,
User_Terminal,
'Emp',
'DELETE',
:OLD.Empno
);
ELSE
INSERT INTO Emp_Audit_Table
VALUES (
Audit_Seq.NEXTVAL,
USER,
Tran_Time,
User_Terminal,
'Emp',
'UPDATE',
:OLD.Empno
);
IF UPDATING('SAL') THEN
INSERT INTO Audit_Table_Values
VALUES(
Audit_Seq.CURRVAL,
'SAL',
:OLD.Sal,
:NEW.Sal
);
ELSIF UPDATING ('DEPTNO') THEN
INSERT INTO Audit_Table_Values
VALUES(
Audit_Seq.CURRVAL,
'DEPTNO',
:OLD.Deptno,
:NEW.DEPTNO
);
END IF;
END IF;
END;
/
Trigger created.
SQL> INSERT INTO Emp(Empno, Ename, Deptno, Sal)
2 VALUES(1234, 'SAMPLE01', 30, 2000);
1 row created.
SQL> SELECT * FROM EmpAudit;
USERNA TRANDATE TRANTIME TRANTYP
------ --------- --------- ------SCOTT 03-SEP-10 01-SEP-10 Insert
SQL> SELECT * FROM Emp_Audit_Table;
AUDITSEQ USERNA TIMETARAN USERTE TRANTYP PROCDON
ENUM
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
-------- ------ --------- ------ ------- ------- ---------1 SCOTT 03-SEP-10 NIT
Emp
INSERT
1234
SQL> DELETE FROM Emp
2 WHERE Empno = 1234;
1 row deleted.
SQL> SELECT * FROM EmpAudit;
USERNA
-----SCOTT
SCOTT
TRANDATE
--------03-SEP-10
03-SEP-10
TRANTIME
--------01-SEP-10
01-SEP-10
TRANTYP
------Insert
Delete
USERNA
-----SCOTT
SCOTT
TIMETARAN
--------03-SEP-10
03-SEP-10
USERTE
-----NIT
NIT
TRANTYP
------Emp
Emp
PROCDON
ENUM
------- ---------INSERT
1234
DELETE
1234
TRANDATE
--------03-SEP-10
03-SEP-10
03-SEP-10
TRANTIME
--------01-SEP-10
01-SEP-10
01-SEP-10
TRANTYP
------Insert
Delete
Update
USERNA
-----SCOTT
SCOTT
SCOTT
TIMETARAN
--------03-SEP-10
03-SEP-10
03-SEP-10
USERTE
-----NIT
NIT
NIT
TRANTYP
------Emp
Emp
Emp
PROCDON
ENUM
------- ---------INSERT
1234
DELETE
1234
UPDATE
7654
UPDATE Emp
SET
Deptno = 20
WHERE Empno = 7654;
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
1 row updated.
SQL> SELECT * FROM Audit_Table_Values
2 /
AUDIT_SEQ
---------3
4
COLUMNNAME
OLDVALUE
NEWVALUE
---------- ---------- ---------SAL
1250
2250
DEPTNO
30
20
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
12
Table created.
SQL>
SQL>
SQL>
SQL>
SQL>
SQL>
COLUMN
COLUMN
COLUMN
COLUMN
COLUMN
cl scr
1 row deleted.
SQL> SELECT Ename FROM Emp WHERE Empno = 7654;
no rows selected
SQL> SELECT * FROM RecycleBin;
EMPNO ENAME
JOB
MGR HIREDATE
SAL COMM
DEPTNO
----- ---------- -------------- ---------- --------- ----- ----- ---------7654 MARTIN
SALESMAN
7698 28-SEP-81 1250 1400
30
SQL> DELETE FROM Emp
2 WHERE Deptno = 30;
5 rows deleted.
SQL> SELECT * FROM RecycleBin;
EMPNO
----7654
7698
7499
7844
7900
7521
ENAME
---------MARTIN
BLAKE
ALLEN
TURNER
JAMES
WARD
JOB
MGR HIREDATE
SAL COMM
DEPTNO
-------------- ---------- --------- ----- ----- ---------SALESMAN
7698 28-SEP-81 1250 1400
30
MANAGER
7839 01-MAY-81 2850
30
SALESMAN
7698 20-FEB-81 1600
300
30
SALESMAN
7698 08-SEP-81 1500
0
30
CLERK
7698 03-DEC-81
950
30
SALESMAN
7698 22-FEB-81 1250
500
30
6 rows selected.
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
Trigger created.
SQL> DELETE FROM Emp WHERE Empno = 7654;
1 row deleted.
SQL> ROLLBACK;
Rollback complete.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> SELECT Ename, Sal FROM Emp;
ENAME
SAL
---------- ----KING
5000
BLAKE
2850
CLARK
2450
JONES
2975
MARTIN
1250
ALLEN
1600
TURNER
1500
JAMES
950
WARD
1250
FORD
3000
SMITH
800
ENAME
SAL
---------- ----SCOTT
3000
ADAMS
1100
MILLER
1300
14 rows selected.
SQL>
2
3
4
5
6
7
8
Trigger created.
SQL> UPDATE Emp
2 SET Sal = 1000
3 WHERE Ename = 'ADAMS';
UPDATE Emp
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
*
ERROR at line 1:
ORA-20500: Salary Cannot be Decreased...
ORA-06512: at "SCOTT.CHKSALARY", line 2
ORA-04088: error during execution of trigger 'SCOTT.CHKSALARY'
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
7
8
9
10
11
Trigger created.
SQL> SELECT Empno, Ename FROm Emp;
EMPNO
----7839
7698
7782
7566
7654
7499
7844
7900
7521
7902
7369
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
EMPNO
----7788
7876
7934
ENAME
---------SCOTT
ADAMS
MILLER
14 rows selected.
SQL> INSERT INTO Emp(Ename, Deptno, Sal, Job)
2 VALUES('SAMPLE', 30, 2000, 'CLERK');
1 row created.
Document Generated By SkyEss Techno Solutions Pvt. Ltd.
For Queries And Live Project Experience in Any Domain
Mail at: info@skyessmail.com (OR) rajesh.b@skyessmail.com
Mobile : 9030750090
ENAME
---------KING
BLAKE
CLARK
JONES
MARTIN
ALLEN
TURNER
JAMES
WARD
FORD
SMITH
EMPNO
----7788
7876
7934
7935
ENAME
---------SCOTT
ADAMS
MILLER
SAMPLE
15 rows selected.
SQL> cl scr
SQL> ROLLBACK;
Rollback complete.
SQL> cl scr
SQL> CREATE SEQUENCE Sample_ID_Key;
Sequence created.
SQL> CREATE TABLE Sample_Tab
2 (
3
SampID VARCHAR2(6),
4
SampName VARCHAR2(10),
5
SampDate DATE
6 );
Table created.
SQL>
2
3
4
5
6
7
8
9
10
11
12
FROM DUAL;
:NEW.SampID:= 'SAM'||LPAD(V_SampID, 3, 0);
END;
/
Trigger created.
SQL> INSERT INTO Sample_Tab(SampName, SampDate)
2 VALUES('SAMPLE01', SYSDATE);
1 row created.
SQL> INSERT INTO Sample_Tab(SampName, SampDate)
2 VALUES('SAMPLE01', SYSDATE);
1 row created.
SQL> SELECT * FROM Sample_Tab;
SAMPID
-----SAM001
SAM002
SAMPNAME
---------SAMPLE01
SAMPLE01
SAMPDATE
--------03-SEP-10
03-SEP-10
SQL> cl scr
SQL>
2
3
4
5
6
SQL>
SQL>
ROLLBACK;
Rollback complete.
SQL> cl scr
SQL>
2
3
4
5
6
Table created.
SQL>
2
3
4
5
6
7
Trigger created.
SQL>
2
3
4
5
6
7
Trigger created.
SQL> SELECT * FROM UserLog;
no rows selected
SQL> SPOOL OFF