Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 16

create table dept39(dno number(2) constraint dept_pk_39 primary key,dname

varchar2(15),dloc varchar2(10));
Table created.

create table employee39(empno number(5) constraint employee_pk_39 primary


key,empname varchar2(15),designation varchar2(10),date_of_join date constraint
emp_doj_NN_39 NOT NULL,salary number(9,2),empdno number(2) constraint
emp_dno_fk_39 references dept39(dno));
Table created.

create table course39(coursecode number(2),


coursename varchar2(15),
constraint codeno_pk_39 primary key(coursecode));
Table created.

create table student39(rollno number(5),


name varchar2(15),
coursecode number(2),
mark1 number(3),
mark2 number(3),
constraint rn_pk_39 primary key(rollno),
constraint cc_fk_39 foreign key(coursecode) references course39(coursecode),
constraint ma1check_39 check(mark1>=0 and mark1<=100),
constraint ma2check_39 check(mark2>=0 and mark2<=100));
Table created.

desc dept39
Name Null? Type
DNO NOT NULL NUMBER(2)
DNAME   VARCHAR2(15)
DLOC   VARCHAR2(10)
desc employee39
Name Null? Type
EMPNO NOT NULL NUMBER(5)
EMPNAME   VARCHAR2(15)
DESIGNATION   VARCHAR2(10)
DATE_OF_JOIN NOT NULL DATE
SALARY   NUMBER(9,2)
EMPDNO   NUMBER(2)
desc course39
Name Null? Type
COURSECODE NOT NULL NUMBER(2)
COURSENAME   VARCHAR2(15)
desc student39
Name Null? Type
ROLLNO NOT NULL NUMBER(5)
NAME   VARCHAR2(15)
COURSECODE   NUMBER(2)
MARK1   NUMBER(3)
MARK2   NUMBER(3)

alter table employee39 add(phoneno number(10));


Table altered.
desc employee39
Name Null? Type
EMPNO NOT NULL NUMBER(5)
EMPNAME   VARCHAR2(15)
DESIGNATION   VARCHAR2(10)
DATE_OF_JOIN NOT NULL DATE
SALARY   NUMBER(9,2)
EMPDNO   NUMBER(2)
PHONENO   NUMBER(10)

alter table dept39 modify(dloc varchar2(15));


Table altered.
desc dept39;
Name Null? Type
DNO NOT NULL NUMBER(2)
DNAME   VARCHAR2(15)
DLOC   VARCHAR2(15)

select * from tab


TNAME TABTYPE CLUSTERID
COURSE39 TABLE  
DEPT39 TABLE  
EMPLOYEE39 TABLE  
STUDENT39 TABLE  

insert into course39 values(75,'IT');


insert into course39 values(72,'ECE');
1 row created.
1 row created.

insert into student39 values(75001,'Sathya',75,89,98);


insert into student39 values(75002,'Ramya',75,90,87);
insert into student39 values(72028,'Shabana',72,97,85);
1 row created.
1 row created.
1 row created.
select * from student39;
ROLLNO NAME COURSECODE MARK1 MARK2
75001Sathya 75 89 98
75002Ramya 75 90 87
72028Shabana 72 97 85

truncate table student39;


Table truncated.
select * from student39;
no rows selected

drop table student39;


Table dropped.

rename employee39 to emp39;


Table renamed.

EX: 2:… DML Commands..

1. insert into dept39 values(01,'sales','blocka');


1 row created.

2. alter table emp39 add(grade varchar2(1))


Table altered.
insert into emp39
values(&empno,'&empname','&designation','&date_of_join',&salary,&depno,NULL,'&grade');

3. select * from dept39;


DNO DNAME DLOC
1sales blocka
2purchase blockd
3production blockb
4marketing blocka
5accounts blockc
6software blocke

6 rows selected.

select * from emp39;

EMPNO EMPNAME DESIGNATIO DATE_OF_J SALARY EMPDNO PHONENO G

1Siva Manager 15-OCT-87 15000 5  A


2Mani salesman 12-APR-87 5000 1  F
3Raju Clerk 13-NOV-89 7000 2  E
4Babu Clerk 04-JAN-95 5000 3  E
5Ram Salesman 08-DEC-00 3000.25 1  F
6Velu Programmer 24-DEC-02 10000 3  A
7Ravi Accountant 12-SEP-91 8000 5  E
8Balan Manager 07-JUN-93 12000.75 3  A
9Mahesh Officer 18-MAR-97 10000.5 2  B
10Kumar Analyst 15-JAN-95 14500 6  C

10 rows selected.

4. update emp39 set phoneno=240397 where empno=2;

1 row updated.

select * from emp39;

EMPNO EMPNAME DESIGNATIO DATE_OF_J SALARY EMPDNO PHONENO G


1Siva Manager 15-OCT-87 15000 5 240830A
2Mani salesman 12-APR-87 5000 1 240397F
3Raju Clerk 13-NOV-89 7000 2 240053E
4Babu Clerk 04-JAN-95 5000 3  E
5Ram Salesman 08-DEC-00 3000.25 1 240608F
6Velu Programmer 24-DEC-02 10000 3  A
7Ravi Accountant 12-SEP-91 8000 5 252107E
8Balan Manager 07-JUN-93 12000.75 3  A
9Mahesh Officer 18-MAR-97 10000.5 2  B
10Kumar Analyst 15-JAN-95 14500 6 259585C

10 rows selected.

5.delete from emp39 where date_of_join<’01_Jan_1989’;

2 rows deleted.

6.create table emp as select * from emp39;

Table created.

7.select empname,designation,trunc(months_between(sysdate,date_of_join)/12)years_of_service
from emp39;

EMPNAME DESIGNATIO YEARS_OF_SERVICE


Raju Clerk 19
Babu Clerk 14
Ram Salesman 8
Velu Programmer 6
Ravi Accountant 17
Balan Manager 16
Mahesh Officer 12
Kumar Analyst 14

8 rows selected.

8. create view empview as select empname,designation,dname from emp39,dept39 where


emp39.empdno=dept39.dno;

View created.

9. select empname,salary from emp39 where salary=10000.50;

EMPNAME SALARY
Mahesh 10000.5

10. select empname,empdno from emp39 where empdno<>01;

EMPNAME EMPDNO
Raju 2
Babu 3
Velu 3
Ravi 5
Balan 3
Mahesh 2
Kumar 6

11. select empname,date_of_join from emp39 where date_of_join>'04-Apr-1995';

EMPNAME DATE_OF_J
Ram 08-DEC-00
Velu 24-DEC-02
Mahesh 18-MAR-97

12. select empname,empdno from emp39 where empdno in(2,3,5);

EMPNAME EMPDNO
Raju 2
Babu 3
Velu 3
Ravi 5
Balan 3
Mahesh 2

6 rows selected.
13. select empname,date_of_join from emp39 where date_of_join between '01-jan-1988' and '01-
jan-1998';

EMPNAME DATE_OF_J
Raju 13-NOV-89
Babu 04-JAN-95
Ravi 12-SEP-91
Balan 07-JUN-93
Mahesh 18-MAR-97
Kumar 15-JAN-95

6 rows selected.

14. select empname from emp39 where empname like 'R%';

EMPNAME
Raju
Ram
Ravi

16 select empname,phoneno from emp39 where phoneno is NULL;

EMPNAME PHONENO
Babu  
Velu  
Balan  
Mahesh  

16 select empname,empdno,salary from emp39 where empdno=01 and salary=3000.25;

EMPNAME EMPDNO SALARY


Ram 1 3000.25

17select empname,empdno,salary from emp39 where empdno=01 or salary=5000;

EMPNAME EMPDNO SALARY


Babu 3 5000
Ram 1 3000.25

18 select empname,designation from emp39 where designation NOT in('Manager','Officer');

EMPNAME DESIGNATIO
Raju Clerk
Babu Clerk
Ram Salesman
Velu Programmer
Ravi Accountant
Kumar Analyst

6 rows selected.

19. select * from dept39 order by dname;

DNO DNAME DLOC


5accounts blockc
4marketing blocka
3production blockb
2purchase blockd
1sales blocka
6software blocke

6 rows selected.

EX. No. 3:

1. select designation,length(designation) from emp39

DESIGNATIO LENGTH(DESIGNATION)
Clerk 5
Clerk 5
Salesman 8
Programmer 10
Accountant 10
Manager 7
Officer 7
Analyst 7

8 rows selected.

2. select dname,substr(dname,1,3) from dept39

DNAME SUB
sales sal
purchase pur
production pro
marketing mar
accounts acc
software sof

6 rows selected.
3. select dloc,replace(dloc,'blocka','blockf') from dept39

DLOC REPLACE(DLOC,'BLOCKA','BLOCKF')
blocka blockf
blockd blockd
blockb blockb
blocka blockf
blockc blockc
blocke blocke

6 rows selected.

4. select rtrim('ABC0000','0'),ltrim('000ABC','0') from dual

RTR LTR
ABC ABC

5. select distinct designation from emp39

DESIGNATIO
Accountant
Analyst
Clerk
Manager
Officer
Programmer
Salesman

7 rows selected.

6. update dept39 set dname='PRODUCTION' where dname='production';

update dept39 set dname='SALES' where dname='sales'

1 row updated.

1 row updated.

select dname,lower(dname)from dept39

DNAME LOWER(DNAME)
SALES sales
purchase purchase
PRODUCTION production
marketing marketing
accounts accounts
software software
6 rows selected.

7. select dloc,upper(dloc) from dept39

DLOC UPPER(DLOC)
blocka BLOCKA
blockd BLOCKD
blockb BLOCKB
blocka BLOCKA
blockc BLOCKC
blocke BLOCKE

6 rows selected.

8. select
grade,decode(grade,'A','manager','F','salesman','E','clerk','D','programmer','B','officer','C','anal
yst') from emp39

G DECODE(GRA
E clerk
E clerk
F salesman
A manager
E clerk
A manager
B officer
C analyst

8 rows selected.

9. select count(empno) from emp39

COUNT(EMPNO)
8

10. select empdno,max(salary),min(salary) from emp39 group by empdno

EMPDNO MAX(SALARY) MIN(SALARY)


1 3000.25 3000.25
2 10000.5 7000
3 12000.75 5000
5 8000 8000
6 14500 14500
11. select sum(salary) from emp39

SUM(SALARY)
69501.5

12. select avg(salary) from emp39

AVG(SALARY)
8687.6875
13. select salary,round(salary) from emp39

SALARY ROUND(SALARY)
7000 7000
5000 5000
3000.25 3000
10000 10000
8000 8000
12000.75 12001
10000.5 10001
14500 14500

8 rows selected.

14. select salary,floor(salary) from emp39

SALARY FLOOR(SALARY)
7000 7000
5000 5000
3000.25 3000
10000 10000
8000 8000
12000.75 12000
10000.5 10000
14500 14500

8 rows selected.

15. select to_char(sysdate,'ddth month YYYY') from dual;

TO_CHAR(SYSDATE,'DD
29th july 2009
16. select to_date('20 sep 1996')date_format from dual

DATE_FORM
20-SEP-96

17. select date_of_join,add_months(date_of_join,2)month_after from emp39

DATE_OF_J MONTH_AFT
13-NOV-89 13-JAN-90
04-JAN-95 04-MAR-95
08-DEC-00 08-FEB-01
24-DEC-02 24-FEB-03
12-SEP-91 12-NOV-91
07-JUN-93 07-AUG-93
18-MAR-97 18-MAY-97
15-JAN-95 15-MAR-95

8 rows selected.

18. select date_of_join,last_day(date_of_join)last_day from emp39

DATE_OF_J LAST_DAY
13-NOV-89 30-NOV-89
04-JAN-95 31-JAN-95
08-DEC-00 31-DEC-00
24-DEC-02 31-DEC-02
12-SEP-91 30-SEP-91
07-JUN-93 30-JUN-93
18-MAR-97 31-MAR-97
15-JAN-95 31-JAN-95

8 rows selected.

19. select trunc(months_between(sysdate,date_of_join))diff from emp39

DIFF
236
174
103
79
214
193
148
174

8 rows selected.
20. select next_day(sysdate,'FRIDAY')nextday from dual

NEXTDAY
31-JUL-09

21.select to_char(to_date('1 January 2000','ddth month YYYY'),’day’)day from dual

DAY
saturday

Ex. No: 4:
JOINS 

1. select empname,dname from emp39,dept39 where emp39.empdno=dept39.dno

EMPNAME DNAME
Raju purchase
Babu PRODUCTION
Ram SALES
Velu PRODUCTION
Ravi accounts
Balan PRODUCTION
Mahesh purchase
Kumar software

8 rows selected.

2. select x.empname,x.salary from emp39 x,emp39 y where x.salary>y.salary and


y.empname='Raju'

EMPNAME SALARY
Velu 10000
Ravi 8000
Balan 12000.75
Mahesh 10000.5
Kumar 14500

3.select empname,dname from emp39,dept39 where emp39.empdno(+)=dept39.dno

EMPNAME DNAME
Ram SALES
Raju purchase
Mahesh purchase
Babu PRODUCTION
Balan PRODUCTION
Velu PRODUCTION
  marketing
Ravi accounts
Kumar software

9 rows selected.

4. select empname from emp39 where empdno in(select dno from dept39 where dname
in('PRODUCTION','SALES','software'));

EMPNAME
Babu
Ram
Velu
Balan
Kumar

SET OPERATIONS:

1. create table produ1(itemcode varchar2(5),itemname varchar2(10));

create table produ2(itemcode varchar2(5),itemname varchar2(10));

Table created.
Table created.

insert into produ1 values('&itemcode','&itemname');

insert into produ2 values('&itemcode','&itemname');

select itemname from produ1 union select itemname from produ2

ITEMNAME
eraser
notebook
pen
pencil
ruler
sketch pen
textbook

7 rows selected.
2. select itemname from produ1 union all select itemname from produ2

ITEMNAME
pen
pencil
ruler
eraser
sketch pen
eraser
notebook
textbook
pen
pencil

10 rows selected.

3. select itemname from produ1 intersect select itemname from produ2

ITEMNAME
pen
pencil
ruler
eraser
sketch pen
eraser
notebook
textbook
pen
pencil

10 rows selected.

4. select itemname from produ1 minus select itemname from produ2

ITEMNAME
ruler
sketch pen

SUB-QUERIES:

1. select empname,salary from emp39 where salary=(select max(salary) from emp39);


EMPNAME SALARY
Kumar 14500
2. select empname,salary from emp39 where salary>any(select avg(salary) from emp39
group by empdno);
EMPNAME SALARY
Raju 7000
Babu 5000
Velu 10000
Ravi 8000
Balan 12000.75
Mahesh 10000.5
Kumar 14500

7 rows selected.

3. insert into emp39 values(0011,'Ramesh','Manager','6-Sep-1989',2500.50,02,230948,'A');

insert into emp39 values(0012,'Raja','Clerk','17-Nov-1989',3000,02,248390,'E');

1 row created.
1 row created.

select empname,salary from emp39 where salary<all(select avg(salary) from emp39 group by
empdno);

EMPNAME SALARY
Ramesh 2500.5
Raja 3000

4. select dname from dept39 where exists(select empdno from emp39 where
emp39.empdno=dept39.dno)

DNAME
SALES
purchase
PRODUCTION
accounts
software

5. select * from emp39 where empdno=(select dno from dept39 where dname='software');

EMPNO EMPNAME DESIGNATIO DATE_OF_J SALARY EMPDNO PHONENO G


10Kumar Analyst 15-JAN-95 14500 6 259585C

6. select designation,empdno,count(*)no_of_employees from emp39 group by


designation,empdno having count(*)=2 order by 2;

DESIGNATIO EMPDNO NO_OF_EMP


Salesman 1 2
Clerk 2 2
Accountant 5 2

You might also like