Professional Documents
Culture Documents
SQL>
2
Enter
old
new
EMPNO ENAME
JOB
MGR HIREDATE
SAL
CO
MM
DEPTNO
---------- ---------- --------- ---------- ----------------- ---------- --------- ---------7369 SMITH
CLERK
7902 17-12-80 12:00:AM
800
20
================================================================================
===========
ANSWER NO-2
SQL> SELECT UPPER(ENAME) ENAME,INITCAP(JOB) JOB,LENGTH(ENAME) FROM EMP
2 WHERE ENAME LIKE'S%' OR ENAME LIKE 'J%';
ENAME
---------SMITH
JONES
SCOTT
JAMES
JOB
LENGTH(ENAME)
--------- ------------Clerk
5
Manager
5
Analyst
5
Clerk
5
================================================================================
============
ANSWER NO-3
1 SELECT CONCAT(ENAME,(CONCAT('WORKSAS',JOB))) FROM EMP;
CONCAT(ENAME,(CONCAT('WORK
-------------------------SMITHWORKSASCLERK
ALLENWORKSASSALESMAN
WARDWORKSASSALESMAN
JONESWORKSASMANAGER
MARTINWORKSASSALESMAN
BLAKEWORKSASMANAGER
CLARKWORKSASMANAGER
SCOTTWORKSASANALYST
KINGWORKSASPRESIDENT
TURNERWORKSASSALESMAN
ADAMSWORKSASCLERK
JAMESWORKSASCLERK
FORDWORKSASANALYST
MILLERWORKSASCLERK
14 rows selected.
================================================================================
===========
ANSWER NO-4
SQL> SELECT * FROM EMP
2 WHERE ENAME LIKE'__L%';
EMPNO ENAME
MM
DEPTNO
---------- ----------- ---------7499 ALLEN
00
30
7934 MILLER
10
JOB
MGR HIREDATE
SAL
CO
1600
CLERK
1300
================================================================================
===========
ANSWER NO-5
SQL> SELECT DNAME,(LENGTH(DNAME)-LENGTH(REPLACE(DNAME,'E',NULL)))
2 COUNT FROM DEPT;
DNAME
COUNT
-------------- ---------ACCOUNTING
0
RESEARCH
2
SALES
1
OPERATIONS
1
================================================================================
===========
ANSWER NO-6
SQL> SELECT ENAME,ROUND(SAL*1.15) FROM EMP;
ENAME
ROUND(SAL*1.15)
---------- --------------SMITH
920
ALLEN
1840
WARD
1438
JONES
3421
MARTIN
1438
BLAKE
3278
CLARK
2818
SCOTT
3450
KING
5750
TURNER
1725
ADAMS
1265
JAMES
1093
FORD
3450
MILLER
1495
14 rows selected.
================================================================================
===========
ANSWER NO-7
1600
WARD
SALESMAN
XXXXXXXXXXXXX
1250
JONES
MANAGER
2975
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
MARTIN
SALESMAN
XXXXXXXXXXXXX
1250
BLAKE
MANAGER
2850
XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
CLARK
MANAGER
2450
XXXXXXXXXXXXXXXXXXXXXXXXX
SCOTT
ANALYST
3000
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
KING
PRESIDENT
5000
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
TURNER
SALESMAN
XXXXXXXXXXXXXXX
1500
ADAMS
CLERK
XXXXXXXXXXX
1100
JAMES
CLERK
XXXXXXXXXX
950
FORD
ANALYST
3000
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
MILLER
CLERK
XXXXXXXXXXXXX
1300
14 rows selected.
================================================================================
================
ANSWER NO-8
SQL> SELECT * FROM EMP
2 WHERE MOD(EMPNO,2)!=0;
EMPNO ENAME
MM
DEPTNO
---------- ----------- ---------7369 SMITH
20
7499 ALLEN
00
30
7521 WARD
00
30
7839 KING
10
JOB
MGR HIREDATE
SAL
CO
800
SALESMAN
1600
SALESMAN
1250
17-11-81 12:00:AM
5000
PRESIDENT
================================================================================
===============
ANSWER NO-9
SQL> SELECT ENAME,HIREDATE,MONTHS_BETWEEN(SYSDATE,HIREDATE) FROM EMP
2 WHERE MONTHS_BETWEEN(SYSDATE,HIREDATE)>340;
ENAME
---------SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
HIREDATE
MONTHS_BETWEEN(SYSDATE,HIREDATE)
----------------- -------------------------------17-12-80 12:00:AM
392.892849
20-02-81 12:00:AM
390.796075
22-02-81 12:00:AM
390.731559
02-04-81 12:00:AM
389.37672
28-09-81 12:00:AM
383.538011
01-05-81 12:00:AM
388.408978
09-06-81 12:00:AM
387.150914
09-12-82 12:00:AM
369.150914
17-11-81 12:00:AM
381.892849
08-09-81 12:00:AM
384.183172
12-01-83 12:00:AM
368.05414
03-12-81 12:00:AM
381.344462
03-12-81 12:00:AM
381.344462
23-01-82 12:00:AM
379.699301
14 rows selected.
================================================================================
===============
ANSWER NO-10
SQL> SELECT ENAME,JOB,SAL,GRADE,DECODE(GRADE,'1',SAL*1.4,
2 '2',SAL*1.3,'3',SAL*1.2,'4',SAL*1.1,'5',SAL*1) "NEW SAL" FROM EMP,SALGRADE
3 WHERE SAL BETWEEN LOSAL AND HISAL;
ENAME
---------SMITH
ADAMS
JAMES
WARD
MARTIN
MILLER
ALLEN
TURNER
JONES
JOB
SAL
GRADE
NEW SAL
--------- ---------- ---------- ---------CLERK
800
1
1120
CLERK
1100
1
1540
CLERK
950
1
1330
SALESMAN
1250
2
1625
SALESMAN
1250
2
1625
CLERK
1300
2
1690
SALESMAN
1600
3
1920
SALESMAN
1500
3
1800
MANAGER
2975
4
3272.5
BLAKE
CLARK
SCOTT
FORD
KING
MANAGER
MANAGER
ANALYST
ANALYST
PRESIDENT
2850
2450
3000
3000
5000
4
4
4
4
5
3135
2695
3300
3300
5000
14 rows selected.
================================================================================
==================
ANSWER NO-11
1 SELECT ENAME,HIREDATE,TO_CHAR(NEXT_DAY(ADD_MONTHS(HIREDATE,6),'MONDAY'),'""F
MDay,"the"FMDDSPTH
SQL>
ENAME
---------SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
HIREDATE
----------------17-12-80 12:00:AM
20-02-81 12:00:AM
22-02-81 12:00:AM
02-04-81 12:00:AM
28-09-81 12:00:AM
01-05-81 12:00:AM
09-06-81 12:00:AM
09-12-82 12:00:AM
17-11-81 12:00:AM
08-09-81 12:00:AM
12-01-83 12:00:AM
03-12-81 12:00:AM
03-12-81 12:00:AM
23-01-82 12:00:AM
REVIEW
--------------------------------------------Monday,theTWENTY-SECOND OFJUNE ,1981
Monday,theTWENTY-FOURTH OFAUGUST ,1981
Monday,theTWENTY-FOURTH OFAUGUST ,1981
Monday,theFIFTH OFOCTOBER ,1981
Monday,theTWENTY-NINTH OFMARCH ,1982
Monday,theSECOND OFNOVEMBER ,1981
Monday,theFOURTEENTH OFDECEMBER ,1981
Monday,theTHIRTEENTH OFJUNE ,1983
Monday,theTWENTY-FOURTH OFMAY ,1982
Monday,theFIFTEENTH OFMARCH ,1982
Monday,theEIGHTEENTH OFJULY ,1983
Monday,theSEVENTH OFJUNE ,1982
Monday,theSEVENTH OFJUNE ,1982
Monday,theTWENTY-SIXTH OFJULY ,1982
14 rows selected.
================================================================================
===============
ANSWER NO-12
CASE:
SQL>
2
3
4
5
6
7
SELECT EMPNO,ENAME,SAL,
CASE
WHEN SAL>3000 THEN 'GOOD SAL'
WHEN SAL=3000 THEN 'AVERAGE SAL'
WHEN SAL<3000 THEN 'POOR SAL'
END "REMARK"
FROM EMP;
EMPNO
---------7369
7499
7521
7566
7654
7698
7782
7788
ENAME
SAL REMARK
---------- ---------- ----------SMITH
800 POOR SAL
ALLEN
1600 POOR SAL
WARD
1250 POOR SAL
JONES
2975 POOR SAL
MARTIN
1250 POOR SAL
BLAKE
2850 POOR SAL
CLARK
2450 POOR SAL
SCOTT
3000 AVERAGE SAL
7839
7844
7876
7900
7902
7934
KING
TURNER
ADAMS
JAMES
FORD
MILLER
5000
1500
1100
950
3000
1300
GOOD SAL
POOR SAL
POOR SAL
POOR SAL
AVERAGE SAL
POOR SAL
14 rows selected.
DECODE:
SQL> SELECT EMPNO,ENAME,DECODE(SIGN(SAL-3000),1,'GOOD SAL',-1,'POOR SAL','AVERAG
E SAL')
2 FROM EMP;
EMPNO
---------7369
7499
7521
7566
7654
7698
7782
7788
7839
7844
7876
7900
7902
7934
ENAME
---------SMITH
ALLEN
WARD
JONES
MARTIN
BLAKE
CLARK
SCOTT
KING
TURNER
ADAMS
JAMES
FORD
MILLER
DECODE(SIGN
----------POOR SAL
POOR SAL
POOR SAL
POOR SAL
POOR SAL
POOR SAL
POOR SAL
AVERAGE SAL
GOOD SAL
POOR SAL
POOR SAL
POOR SAL
AVERAGE SAL
POOR SAL
14 rows selected.
================================================================================
================
ANSWER NO-13
SQL> SELECT TO_CHAR(TO_DATE('&DATE','DD/MM/YYYY'),'DAY') "TODAYS DAY"FROM DUAL;
Enter value for date: 13-09-2013
old 1: SELECT TO_CHAR(TO_DATE('&DATE','DD/MM/YYYY'),'DAY') "TODAYS DAY"FROM DU
AL
new 1: SELECT TO_CHAR(TO_DATE('13-09-2013','DD/MM/YYYY'),'DAY') "TODAYS DAY"FR
OM DUAL
TODAYS DAY
---------FRIDAY
================================================================================
================
ANSWER NO-14
SQL>
2
3
YEARS
MONTHS
---------- ---------32
8
32
6
32
6
32
5
31
11
32
4
32
3
30
9
31
9
32
0
30
8
31
9
31
9
31
7
14 rows selected.
================================================================================
================
ANSWER NO-15
SQL> SELECT EMPNO,HIREDATE,
2 CASE
3 WHEN NEXT_DAY(ROUND(HIREDATE,'MONTH'),'FRIDAY') + 28 <= LAST_DAY(ROUND(HIR
EDATE,'MONTH'))
4
THEN NEXT_DAY(ROUND(HIREDATE,'MONTH'),'FRIDAY') + 28
5 ELSE
6 NEXT_DAY(ROUND(HIREDATE,'MONTH'),'FRIDAY') + 21
7 END "PAYDATE"
8 FROM EMP;
EMPNO
---------7369
7499
7521
7566
7654
7698
7782
7788
7839
7844
7876
7900
7902
7934
HIREDATE
--------17-DEC-80
20-FEB-81
22-FEB-81
02-APR-81
28-SEP-81
01-MAY-81
09-JUN-81
09-DEC-82
17-NOV-81
08-SEP-81
12-JAN-83
03-DEC-81
03-DEC-81
23-JAN-82
PAYDATE
--------30-JAN-81
27-MAR-81
27-MAR-81
24-APR-81
30-OCT-81
29-MAY-81
26-JUN-81
31-DEC-82
25-DEC-81
25-SEP-81
28-JAN-83
25-DEC-81
25-DEC-81
26-FEB-82
14 rows selected.
================================================================================
================
ANSWER NO-16
SQL> SELECT ENAME,HIREDATE,TO_CHAR(HIREDATE,'Day') HIRED_DAY FROM EMP
2 WHERE TO_CHAR(HIREDATE,'Day') LIKE'M%'
SQL> /
ENAME
HIREDATE
HIRED_DAY
---------- ----------------- --------MARTIN
28-09-81 12:00:AM Monday
================================================================================
================
ANSWER NO-17
1* SELECT ROUND(MONTHS_BETWEEN(SYSDATE,('&DOB'))*30) DOB FROM DUAL
SQL> /
Enter value for dob: 22-AUG-1991
old 1: SELECT ROUND(MONTHS_BETWEEN(SYSDATE,('&DOB'))*30) DOB FROM DUAL
new 1: SELECT ROUND(MONTHS_BETWEEN(SYSDATE,('22-AUG-1991'))*30) DOB FROM DUAL
DOB
---------7942
================================================================================
=================
ANSWER NO-18
1 SELECT ENAME ||'Earns'||SAL||'Monthly But Wants'||SAL*3 "DREAM SALARIES" FRO
M EMP
SQL> /
DREAM SALARIES
--------------------------------------------------------------------------------------------------SMITHEarns800Monthly But Wants2400
ALLENEarns1600Monthly But Wants4800
WARDEarns1250Monthly But Wants3750
JONESEarns2975Monthly But Wants8925
MARTINEarns1250Monthly But Wants3750
BLAKEEarns2850Monthly But Wants8550
CLARKEarns2450Monthly But Wants7350
SCOTTEarns3000Monthly But Wants9000
KINGEarns5000Monthly But Wants15000
TURNEREarns1500Monthly But Wants4500
ADAMSEarns1100Monthly But Wants3300
JAMESEarns950Monthly But Wants2850
FORDEarns3000Monthly But Wants9000
MILLEREarns1300Monthly But Wants3900
14 rows selected.
================================================================================
===================
ANSWER NO-19
CASE:
SQL> SELECT ENAME,SAL,
2 CASE
3 WHEN COMM IS NULL THEN 'NO COMMISSION'
JOB
SAL DECODE(COMM,'','NOCOMMISSION',COMM)
--------- ---------- ---------------------------------------CLERK
800 NO COMMISSION
SALESMAN
1600 300
SALESMAN
1250 500
MANAGER
2975 NO COMMISSION
SALESMAN
1250 1400
MANAGER
2850 NO COMMISSION
MANAGER
2450 NO COMMISSION
ANALYST
3000 NO COMMISSION
PRESIDENT
5000 NO COMMISSION
SALESMAN
1500 0
CLERK
1100 NO COMMISSION
CLERK
950 NO COMMISSION
ANALYST
3000 NO COMMISSION
CLERK
1300 NO COMMISSION
14 rows selected.
================================================================================
=====================
ANSWER NO-20
SQL> SELECT DEPTNO , SUM(SAL) SUM,AVG(SAL) AVG ,MIN(SAL) "MIN SAL",MAX(SAL) "MA
X SAL" FROM EMP
2 GROUP BY DEPTNO
3 HAVING DEPTNO != 10;
DEPTNO
SUM
AVG
MIN SAL
MAX SAL
--------- ---------------MANAGER
2758.33333
ANALYST
3000
PRESIDENT
5000
================================================================================
==================
ANSWER NO-23
SQL> SELECT MGR,COUNT(ENAME) "NO OF EMPLOYEES" FROM EMP
2
GROUP BY MGR
3 HAVING MGR IS NOT NULL;
MGR NO OF EMPLOYEES
---------- --------------7566
2
7698
5
7782
1
7788
1
7839
3
7902
1
6 rows selected.
================================================================================
====================
ANSWER NO-24
SQL>
2
3
4