CREATE AND INSERT COMMAND
SQL> CREATE TABLE DEPT(DEPTNO NUMBER(10),DNAME VARCHAR(10),LOC CHAR(10));
Table created.
SQL> INSERT INTO DEPT VALUES(&1,'&2','&3');
Enter value for 1: 10
Enter value for 2: ACCOUNTING
Enter value for 3: NEWYORK
old 1: INSERT INTO DEPT VALUES(&1,'&2','&3')
new 1: INSERT INTO DEPT VALUES(10,'ACCOUNTING','NEWYORK')
1 row created.
SQL> /
Enter value for 1: 20
Enter value for 2: RESEARCH
Enter value for 3: DALLAS
old 1: INSERT INTO DEPT VALUES(&1,'&2','&3')
new 1: INSERT INTO DEPT VALUES(20,'RESEARCH','DALLAS')
1 row created.
SQL> /
Enter value for 1: 30
Enter value for 2: SALES
Enter value for 3: CHICAGO
old 1: INSERT INTO DEPT VALUES(&1,'&2','&3')
new 1: INSERT INTO DEPT VALUES(30,'SALES','CHICAGO')
1 row created.
SQL> /
Enter value for 1: 40
Enter value for 2: OPERATIONS
Enter value for 3: BOSTON
old 1: INSERT INTO DEPT VALUES(&1,'&2','&3')
new 1: INSERT INTO DEPT VALUES(40,'OPERATIONS','BOSTON')
1 row created.
SQL> /
Enter value for 1: 50
Enter value for 2: DDDD
Enter value for 3: HYD
old 1: INSERT INTO DEPT VALUES(&1,'&2','&3')
new 1: INSERT INTO DEPT VALUES(50,'DDDD','HYD')
1 row created.
SQL> SELECT * FROM DEPT;
DEPTNO DNAME
LOC
---------- ---------- ---------10 ACCOUNTING NEWYORK
20 RESEARCH DALLAS
30 SALES
CHICAGO
40 OPERATIONS BOSTON
50 DDDD
HYD
SQL> CREATE TABLE SAL(GRADE NUMBER(10),LOSAL NUMBER(10),HISAL NUM
Table created.
SQL> INSERT INTO SAL VALUES(&1,&2,&3);
Enter value for 1: 1
Enter value for 2: 700
Enter value for 3: 1200
old 1: INSERT INTO SAL VALUES(&1,&2,&3)
new 1: INSERT INTO SAL VALUES(1,700,1200)
1 row created.
SQL> /
Enter value for 1: 2
Enter value for 2: 1201
Enter value for 3: 1400
old 1: INSERT INTO SAL VALUES(&1,&2,&3)
new 1: INSERT INTO SAL VALUES(2,1201,1400)
1 row created.
SQL> /
Enter value for 1: 3
Enter value for 2: 1401
Enter value for 3: 2000
old 1: INSERT INTO SAL VALUES(&1,&2,&3)
new 1: INSERT INTO SAL VALUES(3,1401,2000)
1 row created.
SQL> /
Enter value for 1: 4
Enter value for 2: 2001
Enter value for 3: 3000
old 1: INSERT INTO SAL VALUES(&1,&2,&3)
new 1: INSERT INTO SAL VALUES(4,2001,3000)
1 row created.
SQL> /
Enter value for 1: 5
Enter value for 2: 3001
Enter value for 3: 9999
old 1: INSERT INTO SAL VALUES(&1,&2,&3)
new 1: INSERT INTO SAL VALUES(5,3001,9999)
1 row created.
SQL> SELECT * FROM SAL;
GRADE
LOSAL
HISAL
---------- ---------- ---------1
700
1200
1201
1400
1401
2000
2001
3000
3001
9999
SQL> alter table dept modify loc char(30);
Table altered.
SQL> alter table dept add sal number(10);
Table altered.
SQL> alter table dept drop column sal;
Table altered.
SQL> alter table dept rename column loc to place;
Table altered.
SQL> select * from dept;
DEPTNO DNAME
PLACE
---------- ---------- -----------------------------10 ACCOUNTING DALLAS
20 SALES
HYD
SQL> alter table dept rename column place to loc;
Table altered.
SQL> update dept set loc='newyork' where deptno=20;
1 row updated.
SQL> select * from dept;
DEPTNO DNAME
LOC
---------- ---------- -----------------------------10 ACCOUNTING DALLAS
20 SALES
newyork
SQL> rollback;
Rollback complete.
SQL> select * from dept;
DEPTNO DNAME
LOC
---------- ---------- -----------------------------10 ACCOUNTING DALLAS
20 SALES
HYD
SQL> update dept set loc='newyork' where deptno=20;
1 row updated.
SQL> commit;
Commit complete.
SQL> select * from dept;
DEPTNO DNAME
LOC
---------- ---------- -----------------------------10 ACCOUNTING DALLAS
20 SALES
newyork
SQL> rollback;
Rollback complete.
SQL> select * from dept;
DEPTNO DNAME
LOC
---------- ---------- -----------------------------10 ACCOUNTING DALLAS
20 SALES
newyork
SQL> create user parimi identified by srinu;
User created.
SQL> alter user parimi identified by sri;
User altered.
SQL> grant connect,resource to parimi;
Grant succeeded.
SQL> revoke connect,resource from parimi;
Revoke succeeded.
SQL> truncate table employee;
Table truncated.
SQL> select * from employee;
no rows selected
SQL> desc employee;
Name
Null? Type
----------------------------------------------------- -------- -----------------------------------EMPNO
NUMBER(10)
ENAME
VARCHAR2(12)
JOB
CHAR(10)
MGR
NUMBER(10)
HIREDATE
DATE
SAL
NUMBER(10)
COMM
NUMBER(10)
DEPTNO
NUMBER(10)
SQL> drop table employee;
Table dropped.
SQL> desc employee;
ORA-04043: object employee does not exist
SQL> select * from emp;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
7698 BLAKE
6 rows selected.
MANAGER
SALESMAN
MANAGER
7902 17-DEC-80
800
20
7698 28-SEP-81
1250
7839 01-MAY-81
2850
30
1400
30
10
SQL> select empno,ename,sal+10 as sal from emp;
EMPNO ENAME
SAL
---------- ------------ ---------7369 SMITH
810
7499 ALLEN
1610
7521 WARD
1260
7566 JONES
2985
7654 MARTIN
1260
7698 BLAKE
2860
6 rows selected.
SQL> commit;
Commit complete.
SQL> select * from emp;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7902 17-DEC-80
MANAGER
7654 MARTIN
7698 BLAKE
SALESMAN
MANAGER
1250
7839 01-MAY-81
2850
SQL> select empno,ename,sal-100 as sal from emp;
SAL
---------- ------------ ---------7369 SMITH
700
20
7698 28-SEP-81
6 rows selected.
EMPNO ENAME
800
30
1400
30
10
7499 ALLEN
1500
7521 WARD
1150
7566 JONES
2875
7654 MARTIN
7698 BLAKE
1150
2750
6 rows selected.
SQL>select empno,ename,sal*100 as sal from emp;
EMPNO ENAME
SAL
---------- ------------ ---------7369 SMITH
80000
7499 ALLEN
160000
7521 WARD
125000
7566 JONES
297500
7654 MARTIN
7698 BLAKE
125000
285000
6 rows selected.
SQL>select empno,ename,sal/100 as sal from emp;
EMPNO ENAME
SAL
---------- ------------ ---------7369 SMITH
7499 ALLEN
16
7521 WARD
12.5
7566 JONES
29.75
7654 MARTIN
7698 BLAKE
12.5
28.5
SQL> select * from emp;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
7698 BLAKE
MANAGER
7902 17-DEC-80
SALESMAN
MANAGER
800
7698 28-SEP-81
1250
7839 01-MAY-81
2850
20
30
1400
30
10
6 rows selected.
SQL> select * from emp where sal>1000;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
7698 BLAKE
MANAGER
SALESMAN
MANAGER
7698 28-SEP-81
1250
7839 01-MAY-81
2850
30
1400
30
10
SQL> select * from emp where sal<1000;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7902 17-DEC-80
800
20
SQL> select * from emp where sal between 1000 and 2000;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
7654 MARTIN
SALESMAN
SALESMAN
7698 22-FEB-81
1250
500
7698 28-SEP-81
1250
1400
30
30
SQL> select * from emp where comm is null;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7566 JONES
MANAGER
7698 BLAKE
MANAGER
7902 17-DEC-80
7839 02-APR-81
800
20
2975
7839 01-MAY-81
30
2850
10
SQL> select * from emp where comm is not null;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7698 28-SEP-81
1250
1400
7654 MARTIN
SALESMAN
30
SQL> select * from emp where ename like's%';
no rows selected
SQL> select * from emp where ename like'S%';
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7902 17-DEC-80
800
20
SQL> select * from emp where job like'_A%';
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
MANAGER
30
7654 MARTIN
7698 BLAKE
SALESMAN
MANAGER
7698 28-SEP-81
1250
7839 01-MAY-81
2850
1400
30
10
SQL> select * from emp where ename like'%R_';
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
SQL> select * from emp where sal like'____';
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
MANAGER
SALESMAN
7698 28-SEP-81
1250
MGR HIREDATE
SAL
30
1400
30
SQL> select * from emp where sal<>800;
EMPNO ENAME
JOB
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
7698 BLAKE
MANAGER
SALESMAN
MANAGER
7698 28-SEP-81
1250
7839 01-MAY-81
2850
30
1400
30
10
SQL>select * from emp where sal<>800 and sal<>1600;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7566 JONES
MANAGER
7654 MARTIN
SALESMAN
7698 BLAKE
MANAGER
7839 02-APR-81
2975
7698 28-SEP-81
1250
7839 01-MAY-81
2850
30
1400
30
10
SQL>select * from emp where sal<>800 or sal<>1600;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
7698 BLAKE
MANAGER
SALESMAN
MANAGER
7902 17-DEC-80
800
20
7698 28-SEP-81
1250
7839 01-MAY-81
2850
30
1400
30
10
6 rows selected.
SQL> select * from emp where sal not between 1000 and 2000;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7566 JONES
MANAGER
7698 BLAKE
MANAGER
7902 17-DEC-80
7839 02-APR-81
800
20
2975
7839 01-MAY-81
30
2850
10
SQL> select * from emp where job not in('SALESMAN');
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7566 JONES
MANAGER
7698 BLAKE
MANAGER
7902 17-DEC-80
7839 02-APR-81
7839 01-MAY-81
800
20
2975
2850
SQL>select * from emp where job not in('SALESMAN','CLERK');
30
10
DEPTNO
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7566 JONES
MANAGER
7839 02-APR-81
SQL> select * from exm;
EMPNO ENAME
LOC
---------- ---------- ---------10 sri
hyd
20 nag
sec
30 mahesh
chennai
SQL> select * from epp;
EMPNO ENAME
LOC
---------- ---------- ---------20 mohan
amerpet
40 brahmi
srnagar
60 bharat
yyguda
20 nag
sec
SQL> select * from exm union select * from epp;
EMPNO ENAME
LOC
---------- ---------- ---------10 sri
hyd
20 mohan
20 nag
amerpet
sec
30 mahesh
chennai
40 brahmi
srnagar
60 bharat
6 rows selected.
yyguda
2975
30
DEPTNO
SQL> select * from exm union all select * from epp;
EMPNO ENAME
LOC
---------- ---------- ---------10 sri
hyd
20 nag
sec
30 mahesh
chennai
20 mohan
amerpet
40 brahmi
srnagar
60 bharat
yyguda
20 nag
sec
7 rows selected.
SQL> select * from exm intersect select * from epp;
EMPNO ENAME
LOC
---------- ---------- ---------20 nag
sec
SQL> select * from exm minus select * from epp;
EMPNO ENAME
LOC
---------- ---------- ---------10 sri
hyd
30 mahesh
Chennai
SQL> select * from emp;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7902 17-DEC-80
800
20
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7566 JONES
MANAGER
7654 MARTIN
7839 02-APR-81
SALESMAN
7698 BLAKE
MANAGER
2975
7698 28-SEP-81
1250
7839 01-MAY-81
2850
MGR HIREDATE
SAL
30
1400
30
10
6 rows selected.
SQL> select * from emp order by sal;
EMPNO ENAME
JOB
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7521 WARD
SALESMAN
7654 MARTIN
7902 17-DEC-80
1250
500
7698 28-SEP-81
1250
1400
SALESMAN
SALESMAN
7698 20-FEB-81
7698 BLAKE
MANAGER
7839 01-MAY-81
MANAGER
20
7698 22-FEB-81
7499 ALLEN
7566 JONES
800
1600
30
300
2850
7839 02-APR-81
30
30
10
2975
30
6 rows selected.
SQL>select * from emp order by sal desc;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7566 JONES
MANAGER
7839 02-APR-81
2975
30
7698 BLAKE
MANAGER
7839 01-MAY-81
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7698 28-SEP-81
1250
1400
7654 MARTIN
7369 SMITH
6 rows selected.
SALESMAN
CLERK
7902 17-DEC-80
2850
800
10
20
30
SQL>select * from emp order by ename desc;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7521 WARD
SALESMAN
7369 SMITH
CLERK
7654 MARTIN
7566 JONES
SALESMAN
MANAGER
7698 22-FEB-81
7902 17-DEC-80
7698 28-SEP-81
7839 02-APR-81
7698 BLAKE
MANAGER
7839 01-MAY-81
7499 ALLEN
SALESMAN
7698 20-FEB-81
6 rows selected.
SQL> select abs(-18) from dual;
ABS(-18)
---------18
SQL> select abs(18) from dual;
ABS(18)
---------18
SQL> select sqrt(100) from dual;
SQRT(100)
---------10
SQL> select sqrt(625) from dual;
SQRT(625)
---------25
1250
800
500
30
20
1250
1400
2975
30
2850
1600
30
10
300
30
SQL> select power(2,4) from dual;
POWER(2,4)
---------16
SQL> select power(2,8) from dual;
POWER(2,8)
---------256
SQL> select mod(10,3) from dual;
MOD(10,3)
---------1
SQL> select mod(16,4) from dual;
MOD(16,4)
---------0
SQL> select sign(15) from dual;
SIGN(15)
---------1
SQL> select ceil(45.1002) from dual;
CEIL(45.1002)
------------46
SQL> select floor(45.9889) from dual;
FLOOR(45.9889)
-------------45
SQL> select sign(-15) from dual;
SIGN(-15)
----------1
SQL>select sign(0) from dual;
SIGN(0)
---------0
SQL> select round(152.1856,2) from dual;
ROUND(152.1856,2)
----------------152.19
SQL> select trunc(152.1856,2) from dual;
TRUNC(152.1856,2)
------152.18
SQL> select ascii('a') from dual;
ASCII('A')
---------97
SQL> select chr(65) from dual;
C
A
SQL> select upper('tecno') from dual;
UPPER
----TECNO
SQL> select lower('TECNO') from dual;
LOWER
----tecno
SQL> select initcap('welcome to tecno soft')from dual;
INITCAP('WELCOMETOTEC
--------------------Welcome To Tecno Soft
SQL>select length('Tecnsoft') from dual;
LENGTH('TECNSOFT')
-----------------8
SQL>Select substr('Tecnosoft',6,4) from dual;
SUBS
---soft
SQL> select instr('Hello good morning','good',1,1) from dual;
INSTR('HELLOGOODMORNING','GOOD',1,1)
-----------------------------------7
SQL> select lpad('Tecno',10,5) from dual;
LPAD('TECN
--------*****Tecno
SQL>select rpad('Tecno',10,5) from dual
RPAD('TECN
---------Tecno*****
SQL> select ltrim('Oracle','O') from dual;
LTRIM
----racle
SQL>select rtrim('Oracle','e') from dual;
RTRIM
----Oracl
SQL> select trim('t' from 'tecnsoft') from dual;
TRIM('
-----ecnsof
SQL>select concat('Tecno','Soft')from dual;
CONCAT('T
--------TecnoSoft
SQL> select translate('Welcome','e','a') from dual;
TRANSLA
------Walcoma
SQL> select replace('tecnosoft','tecno','hello') from dual;
REPLACE('
--------hellosoft
SQL> create view emp_view as select * from dept;
View created.
SQL> select * from emp_view;
DEPTNO DNAME
LOC
---------- ---------- ---------10 accounting newyork
20 research dallas
30 sales
chicago
40 operations boston
50 cogs
palle
SQL> create view emp_view123 as select * from emp_view;
View created.
SQL> select * from emp_view123;
DEPTNO DNAME
LOC
---------- ---------- ---------10 accounting newyork
20 research dallas
30 sales
chicago
40 operations boston
50 cogs
palle
SQL> create table con(deptno number(10),dname varchar(10) constraint unq_dname unique,loc
varchar(10
));
Table created.
SQL> insert into con values(100,'parimi','hyd');
1 row created.
SQL> insert into con values(101,'parimi','mum');
insert into con values(101,'parimi','mum')
*
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.UNQ_DNAME) violated
SQL> insert into con values(101,'sri','hyd');
1 row created.
SQL> select * from con;
DEPTNO DNAME
LOC
---------- ---------- ---------100 parimi
101 sri
hyd
hyd
SQL> create table con(empno number(10) not null,ename varchar(10) constraint unq_ename unique,sal
number(10) constraint chk_sal check(sal>1000));
Table created.
SQL> insert into con values(10,'sri',2000);
1 row created.
SQL> insert into con values(20,'sri',8000);
insert into con values(20,'sri',8000)
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.UNQ_ENAME) violated
SQL> insert into con values(30,'parimi',500);
insert into con values(30,'parimi',500)
ERROR at line 1:
ORA-02290: check constraint (SYSTEM.CHK_SAL) violated
SQL>create table con(deptno number(10) constraint pk_deptno primary key,
dname varchar(10) constraint unq_dname unique,
loc varchar(10));
Table created.
SQL> insert into con values(10,'nag','hyd');
1 row created.
SQL> insert into con values(10,'prakash','hyd');
insert into con values(10,'prakash','hyd')
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.PK_DEPTNO) violated
SQL> insert into con values(20,'nag','mum');
insert into con values(20,'nag','mum')
ERROR at line 1:
ORA-00001: unique constraint (SYSTEM.UNQ_DNAME) violated
SQL> select * from con;
DEPTNO DNAME
LOC
---------- ---------- ---------10 nag
hyd
SQL> create table con(deptno number(10),
dname varchar(10),
loc varchar(10),
constraint pk_deptno primary key(deptno),
constraint unq_dname unique(dname));
Table created.
SQL> create sequence dept_deptno_seq
2 increment by 1
3 start with 100
4 maxvalue 9999
5 nocache
6 nocycle;
Sequence created.
SQL>alter sequence dept_deptno_seq
increment by 20
maxvalue 999999
nocache
nocycle;
Sequence altered.
SQL> drop sequence dept_deptno_seq;
Sequence dropped.
SQL> select * from emp;
EMPNO ENAME
JOB
MGR HIREDATE
SAL
COMM
DEPTNO
---------- ------------ ---------- ---------- --------- ---------- ---------- ---------7369 SMITH
CLERK
7499 ALLEN
SALESMAN
7698 20-FEB-81
1600
300
30
7521 WARD
SALESMAN
7698 22-FEB-81
1250
500
30
7839 02-APR-81
2975
7566 JONES
7654 MARTIN
7698 BLAKE
6 rows selected.
MANAGER
SALESMAN
MANAGER
7902 17-DEC-80
800
20
7698 28-SEP-81
1250
7839 01-MAY-81
2850
30
1400
30
10
SQL> select count(*) from emp;
COUNT(*)
---------6
SQL> select count(distinct job) as totjob from emp;
TOTJOB
---------3
SQL> select max(sal) from emp;
MAX(SAL)
---------2975
SQL> select max(sal) from emp group by deptno;
MAX(SAL)
---------2850
800
2975
SQL> select min(sal) from emp;
MIN(SAL)
---------800
SQL> select min(sal) from emp group by deptno;
MIN(SAL)
---------2850
800
1250
SQL> select sum(sal) from emp;
SUM(SAL)
---------10725
SQL> select avg(sal) from emp;
AVG(SAL)
---------1787.5
SQL> select sum(sal)/count(sal) from emp;
SUM(SAL)/COUNT(SAL)
------------------1787.5
SQL> select avg(sal) from emp group by deptno;
AVG(SAL)
---------2850
800
1768.75
SQL> select sum(sal)/count(sal) from emp group by deptno;
SUM(SAL)/COUNT(SAL)
------------------2850
800
1768.75
SQL> select avg(sal),count(*) from emp group by deptno;
AVG(SAL) COUNT(*)
---------- ---------2850
800
1768.75
SQL> select job,count(*) employees from emp group by job;
JOB
EMPLOYEES
---------- ---------CLERK
MANAGER
SALESMAN
CREATE WITH SELECT
We can create a table using existing table [along with data].
Syntax:
Create table <new_table_name> [col1, col2, col3 ... coln] as select * from
<old_table_name>;
Ex:
create table student1 as select * from student;
SQL>
Creating table with your own column names.
SQL>
create table student2(sno, sname, smarks) as select * from student;
Creating table with specified columns.
create table student3 as select no,name from student;
SQL>
Creating table with out table data.
SQL>
create table student2(sno, sname, smarks) as select * from student where 1 = 2;
In the above where clause give any condition which does not satisfy.
INSERT WITH SELECT
Using this we can insert existing table data to a another table in a single trip. But the table structure should
be same.
Syntax:
Insert into <table1> select * from <table2>;
Ex:
SQL> insert
into student1 select * from student;
Inserting data into specified columns
SQL> insert
into student1(no, name) select no, name from student;