SQL Codes For Problems With Output
SQL Codes For Problems With Output
--EQUI JOIN
--NON EQUI JOIN
--OUTER JOIN(LEFT,RIGHT,FULL)
--SELF JOIN
--NATURAL JOIN
MGR HIREDATE
SAL
COMM
LOC
---------- --------- ---------- ---------- ----7902 17-DEC-80
7698
CHICAGO
7698
CHICAGO
7839
DALLAS
7698
CHICAGO
7839
CHICAGO
7839
NEW YORK
7566
DALLAS
NEW YORK
7698
CHICAGO
7788
DALLAS
7698
CHICAGO
7566
DALLAS
7782
NEW YORK
20-FEB-81
1600
300
22-FEB-81
1250
500
02-APR-81
2975
28-SEP-81
1250
01-MAY-81
2850
09-JUN-81
2450
19-APR-87
3000
17-NOV-81
5000
08-SEP-81
1500
23-MAY-87
1100
03-DEC-81
950
03-DEC-81
3000
23-JAN-82
1300
14 rows selected.
SQL>
ALTER TABLE EMP
RENAME COLUMN DEPTNO TO D#;
SQL> SELECT ENAME,DNAME FROM EMP RIGHT OUTER JOIN DEPT
2 ON(DEPTNO=D#);
ENAME
DNAME
---------- --------------
800
DALLAS
1400
SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
SQL>
2
3
4
SQL>
SQL>
SQL>
SQL>
2
3
RESEARCH
SALES
SALES
RESEARCH
SALES
SALES
ACCOUNTING
RESEARCH
ACCOUNTING
SALES
RESEARCH
SALES
RESEARCH
ACCOUNTING
OPERATIONS
ENAME
---------FORD
SCOTT
JAMES
TURNER
MARTIN
WARD
ALLEN
MILLER
ADAMS
CLARK
BLAKE
JONES
SMITH
ENAME
---------JONES
JONES
BLAKE
BLAKE
BLAKE
BLAKE
BLAKE
CLARK
SCOTT
KING
KING
KING
FORD
13 rows selected.
SQL> SELECT ENAME,GRADE FROM EMP JOIN SALGRADE
2 ON (SAL BETWEEN LOSAL AND HISAL);
ENAME
GRADE
---------- ---------SMITH
1
JAMES
1
ADAMS
1
WARD
2
MARTIN
2
MILLER
2
TURNER
3
ALLEN
3
CLARK
4
BLAKE
JONES
SCOTT
FORD
KING
SQL>
2
3
4
4
4
4
4
5
SELECT * FROM EMP WHERE SAL>
(
SELECT AVG(SAL) FROM EMP E WHERE E.DEPTNO=EMP.DEPTNO
);
EMPNO
EPTNO
-------------7499
30
7566
20
7698
30
7788
20
7839
10
7902
20
ENAME
JOB
MGR HIREDATE
ALLEN
SALESMAN
7698 20-FEB-81
1600
JONES
MANAGER
7839 02-APR-81
2975
BLAKE
MANAGER
7839 01-MAY-81
2850
SCOTT
ANALYST
7566 19-APR-87
3000
KING
PRESIDENT
17-NOV-81
5000
FORD
ANALYST
7566 03-DEC-81
3000
SQL>
ENAME
---------SMITH
JAMES
ADAMS
WARD
MARTIN
MILLER
TURNER
ALLEN
CLARK
BLAKE
JONES
SCOTT
FORD
KING
DNAME
GRADE
-------------- ---------RESEARCH
1
SALES
1
RESEARCH
1
SALES
2
SALES
2
ACCOUNTING
2
SALES
3
SALES
3
ACCOUNTING
4
SALES
4
RESEARCH
4
RESEARCH
4
RESEARCH
4
ACCOUNTING
5
14 rows selected.
SQL>
COMM
6 rows selected.
SQL>
2
3
4
SAL
300
88888888888888888888888888888888888888888888888888888888888888888888888888888888
SUBQUERIES
SINGLE ROW
MULTI ROW
CORELATED
DDL
CREATE
ALTER
DROP
TRUNCATE
RENAME
CREATE TABLEE
SQL>
2
3
4
5
6
7
8
Table created.
SQL>
2
3
4
5
6
7
Table created.
SQL> ALTER TABLE ISSUE
2 ADD(RETURNDT DATE)
3 /
Table altered.
SQL> ALTER TABLE BOOK---MODIFY ANY ATTRIBUTE
2 MODIFY(TITLE,NUMBER)-HERE NOT DONE.
3
SQL>
SQL> ALTER TABLE BOOK
2 DROP COLUMN PUBLISHER;
Table altered.
SQL> INSERT INTO BOOK
2
SQL>
SQL> SELECT * FROM BOOK
2
SQL> INSERT INTO BOOK
2 VALUES('1','ORACLE10G','IVAN BAYROSS','BPB',450);
INSERT INTO BOOK
*
ERROR at line 1:
ORA-00913: too many values
SQL> INSERT INTO BOOK
2
SQL>
SQL>
SQL>
SQL> DESC BOOK
Name
-----------------------------------------------------------------------ISBN#
TITLE
AUTHOR
PRICE
SQL> INSERT INTO BOOK
2 VALUES('1','ORACLE','GRH',450);
1 row created.
SQL> INSERT INTO BOOK
2 VALUES('2','CG','KGH',340);
1 row created.
SQL> UPDATE BOOK
TITLE
AUTHOR
PRICE
-------------------- -------------------------------------------------- ------------------------ -1
ALCHEMIST
GRH
450
2
CG
KGH
340
SQL> DELETE
-------------------ISBN#
TITLE
AUTHOR
PRICE
SQL> INSERT INTO BOOK
2 VALUES('1','ORACLE','GRH',450);
1 row created.
SQL> INSERT INTO BOOK
2 VALUES('2','CG','KGH',340);
1 row created.
SQL> UPDATE BOOK
2 SET TITLE='ALCHEMIST'
3 WHERE ISBN#=1;
1 row updated.
SQL> UPDATE BOOK
2 SET TITLE
3
SQL>
SQL>
SQL> DESC BOOK
Name
-------------------------------------------------------------------------------------------------ISBN#
TITLE
AUTHOR
PRICE
SQL> UPDATE BOOK
2 SET TITLE='ALCHEMIST'
3 WHERE ISBN#=1;
1 row updated.
SQL> DESC BOOK;
Name
-------------------------------------------------------------------------------------------------ISBN#
TITLE
AUTHOR
PRICE
SQL> SELECT * FROM BOOK;
ISBN#
TITLE
AUTHOR
PRICE
-------------------- -------------------------------------------------- ------------------------ -1
ALCHEMIST
GRH
450
2
CG
KGH
340
SQL> UPDATE BOOK
2 SET TITLE='ALCHEMIST';
2 rows updated.
SQL> SELECT * FROM BOOK;
ISBN#
TITLE
AUTHOR
PRICE
-------------------- -------------------------------------------------- ------------------------ -1
ALCHEMIST
GRH
450
2
ALCHEMIST
KGH
340
SQL> DELETE FROM BOOK WHERE AUTHOR='GRH';
1 row deleted.
SQL> SELECT * FROM BOOK;
ISBN#
TITLE
AUTHOR
PRICE
-------------------- -------------------------------------------------- ------------------------ -2
ALCHEMIST
KGH
340
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM BOOK;
no rows selected
SQL> INSERT INTO BOOK
2 VALUES('1','ORACLE','GRH',450);
1 row created.
SQL> INSERT INTO BOOK
2 VALUES('2','CG','KGH',340);
1 row created.
SQL> COMMIT;
Commit complete.
SQL> DELETE FROM BOOK WHERE AUTHOR='GRH';
1 row deleted.
SQL> ROLLBACK;
Rollback complete.
SQL> SELECT * FROM BOOK;
ISBN#
TITLE
AUTHOR
PRICE
-------------------- -------------------------------------------------- ------------------------ -1
ORACLE
GRH
450
2
CG
KGH
340
SQL> INSERT INTO BOOK;
INSERT INTO BOOK
*
ERROR at line 1:
ORA-00926: missing VALUES keyword
SQL> INSERT INTO BOOK
2 VALUES('&ISBN#','&TITLE','&AUTHOR',&PRICE);
Enter value for isbn: 4
Enter value for title: HAR
Enter value for author: HAR
Enter value for price: 16
old 2: VALUES('&ISBN#','&TITLE','&AUTHOR',&PRICE)
new 2: VALUES('4#','HAR','HAR',16)
1 row created.
SQL>
SQL> INSERT INTO BOOK
2 VALUES('&ISBN#','&TITLE','&AUTHOR',&PRICE);
Enter value for isbn: 4
Enter value for title: HAR
Enter value for author: HAR
Enter value for price: 16
old 2: VALUES('&ISBN#','&TITLE','&AUTHOR',&PRICE)
new 2: VALUES('4#','HAR','HAR',16)
1 row created.
SQL> RENAME BOOK TO JOURNAL;
Table renamed.
SQL> SELECT * FROM JOURNAL;
ISBN#
TITLE
AUTHOR
PRICE
-------------------- -------------------------------------------------- ------------------------ -1
ORACLE
GRH
450
2
CG
KGH
340
4#
HAR
HAR
16
TITLE
AUTHOR
CG
KGH
4#
HAR
HAR
SQL>
SQL> SELECT ROWID FROM EMP;
ROWID
-----------------AAAMfPAAEAAAAAgAAA
AAAMfPAAEAAAAAgAAB
AAAMfPAAEAAAAAgAAC
AAAMfPAAEAAAAAgAAD
AAAMfPAAEAAAAAgAAE
AAAMfPAAEAAAAAgAAF
AAAMfPAAEAAAAAgAAG
AAAMfPAAEAAAAAgAAH
AAAMfPAAEAAAAAgAAI
AAAMfPAAEAAAAAgAAJ
AAAMfPAAEAAAAAgAAK
AAAMfPAAEAAAAAgAAL
AAAMfPAAEAAAAAgAAM
AAAMfPAAEAAAAAgAAN
14 rows selected.
SQL> SELECT ROWID FROM DEPT;
ROWID
-----------------AAAMfNAAEAAAAAQAAA
AAAMfNAAEAAAAAQAAB
AAAMfNAAEAAAAAQAAC
AAAMfNAAEAAAAAQAAD
SQL> CREATE INDEX ENNIDX ON EMP(ENAME);
Index created.
SQL> DROP INDEX ENNIDX;
Index dropped.
SQL> CREATE BITMAP INDEX DBTIDX ON EMP(DEPTNO);
Index created.
SQL>
SQL>
SQL> CONN SYS AS SYSDBA
Enter password:
Connected.
SQL>
SQL> GRANT CREATE ANY SYNONYM TO SCOTT;
Grant succeeded.
SQL> CONN SCOTT;
Enter password: *****
Connected.
SQL> CREATE SYNONYM WORKER FOR EMP;
Synonym created.
SQL> SELECT * FROM WORKER;
EMPNO
EPTNO
-------------7369
20
7499
30
7521
30
7566
20
7654
30
7698
30
7782
10
7788
20
7839
10
7844
30
7876
20
7900
30
7902
20
7934
10
ENAME
JOB
SAL
COMM
CLERK
7902 17-DEC-80
800
ALLEN
SALESMAN
7698 20-FEB-81
1600
300
WARD
SALESMAN
7698 22-FEB-81
1250
500
JONES
MANAGER
7839 02-APR-81
2975
MARTIN
SALESMAN
7698 28-SEP-81
1250
BLAKE
MANAGER
7839 01-MAY-81
2850
CLARK
MANAGER
7839 09-JUN-81
2450
SCOTT
ANALYST
7566 19-APR-87
3000
KING
PRESIDENT
17-NOV-81
5000
TURNER
SALESMAN
7698 08-SEP-81
1500
ADAMS
CLERK
7788 23-MAY-87
1100
JAMES
CLERK
7698 03-DEC-81
950
FORD
ANALYST
7566 03-DEC-81
3000
MILLER
CLERK
7782 23-JAN-82
1300
14 rows selected.
CREATE
MGR HIREDATE
1400
---------1000
SQL> /
NEXTVAL
---------1004
SQL> /
NEXTVAL
---------1008
SQL>
SQL>
2
3
4
5
6
7
SQL>