SQL Queries
SQL Queries
SQL Queries
TABLES:
1) Table name - programmer
name not null varchar2(8) name
dob not null date date of birth
doj not null date date of joining
sex not null varchar2(1) male or female
prof1 varchar2(8) known language 1
prof2 varchar2(8) known language 2
salary not null number(4) salary
Entry eg:
somdutt 21-apr-66 21-apr-92 m pascal basic 3200
Entry eg:
somdutt parachutes basic 399.95 6000 43
3) Table name - studies
name not null varchar2(8) name
splace not null varchar2(9) studies place
course not null varchar2(5) course studied
ccost not null number(5) course cost
Entry example:
somdutt sabhari pgdca 4500
devdutt bdps dcs 5000
QUERIES - I
1) Find out the SELLING COST AVERAGE for the packages developed in PASCAL?
2) Display the names and ages of all programmers.
3) Display the names and ages of all the programmers
4) What is the highest numbers of copies sold by a package?
5) Display the names and date of birth of all the programmer born in JANUARY.
6) Display lowest course fee.
7) How many programmer has done PGDCA course.
8) How much revenue has been earned through sales of packages in C.
9) Display the details of software developed by Ramesh?
10) How many programmers studied at SABHARI.
11) Display the details of PACKAGES whose sales crossed the 20000 mark.
12) Find out the number of copies which should be sold in order to recover the d
evelopment cost of each package.
13) What is the price of the costliest software developed in BASIC?
14) Display the details of packages for which development cost has been recovere
d.
15) How many packages were developed in dbase?
16) How many programmers studies at paragathi?
17) How many programmers paid 5000 to 10000 for their course?
18) What is the average course fee?
19) Display the details of programmers knowing c?
20) How many programmers know either Cobol or Pascal?
21) How many programmers don't know Pascal & C?
22) How old is the oldest male programmers?
23) What is the average age of female programmers?
24) Calculate the experience in years for each programmers and display along wit
h the names in descending order?
25) Who are the programmers who celebrate their birthday during the current mont
h?
26) How many female programmers are there?
27) What are the languages known by the male programmers?
28) What is the Average salary?
29) How many people draw 2000 to 4000?
30) Display the details of those who don't know Clipper, Cobol or Pascal?
31) How many Female programmers knowing C are above 24 years of age?
32) Who are the programmers who will be celebrating their Birthday within a week
?
33 Display the details of those with less than a year's experience?
34 Display the details of those who will be completing 2 years of service this y
ear?
35 Calculate the amount to be recovered for those packages whose development cos
t has not been recovered?
36)ist the packages which have not been sold so far?
37) Find out the cost of the software developed by Mary?
38) Display the institutes names from the studies table without duplicates?
39) How many different courses are mentioned in the studies table?
40) Display the names of the programmers whose names contain 2 occurrences of th
e letter A?
41) Display the names of programmers whose names contain unto 5 characters?
42) How many female programmers knowing COBOL have more than 2 years experience?
43) What is the length of the shortest name in the programmer table?
44) What is the average development cost of a package developed in COBOL?
45) Display the name,sex,dob(DD/MM/YY format), doj for all the programmers witho
ut using conversion function?
46) Who are the programmers who were born on the last day of the month?
47) What is the amount paid in salaries of the male programmers who do not know
Cobol?
48) Display the title, scost, dcost and difference between scost and dcost in de
scending order of difference?
49) Display the name, dob, doj of those month of birth and month of joining are
same?
50) Display the names of the packages whose names contain more than 1 word?
QUERIES - II
QUERIES - III
QUERY - IV
1) Display the details of THOSE WHO are drawing the same salary.
2) Display the details of software developed by male programmers earing MORE tha
n 3000.
3) Display details of packages developed in PASCAL by female programmers.
4) Display the details of these programmer WHO joined BEFORE 1990.
5)Display details of software developed in C by female programmers of PRAGATHI.
6) Display NUMBER of packages NUMBER of copies sold and sales value of EACH prog
rammer Institute-wise.
7) Display details of software developed in DBASE by male programmers WHO belong
to the institute on which MOST NUMBER OF programmers studies.
8) Display the details of the software that was developed by male programmers bo
rn BEFORE 1965 and female programmers born AFTER 1975.
9) Display the details of the software that was developed in the language that i
s NOT the programmers first proficiency.
10) Display details of software that was developed in the language which is NITH
ER first NOR second proficiency of the programmer.
11) Display details of software developed by male students of SABHARI.
12) Display the names of programmers WHO HAVE NOT developed any package.
13) What is the total cost of the software developed by the programmers by APPL
E?
14) Who are the programmers WHO JOINED in the same day?
15) Who are the programmers WHO HAVE THE SAME PROF2?
16) Display the total sales values of software, institutes-wise.
17) In which institutes did the person who developed the COSTLIEST package study
?
18) Which language listed in prof1 and prof2 HAS NOT BEEN used to develop any pa
ckage?
19) How much does the person WHO developed the HIGHEST selling package earn and
WHAT course did he/she undergo?
20) How many months will it take for each programmer to recover the cost of the
course underwent?
21) Which is the COSTLIEST package developed by a person with under 3 years expe
nence?
22) What is the AVERAGE salary for those WHOSE software's sales value is more th
an 50,000?
23) How many packages were developed by the students WHO studied in the institut
e that Charge the LOWEST course fee?
24) How many packages were developed by the person WHO developed the CHEAPEST pa
ckage. Where did he\she study?
25) How many packages were developed by female programmers earning MORE than the
HIGHEST paid male programmer?
26) How many packages were developed by the MOST experienced programmers from BD
PS.
27) List the programmers (from software table) and institutes they studied, incl
uding those WHO DIDN'T develop any package.
28) List each profit with the number of programmers having that prof1 and the nu
mber of packages developed in that prof1.
29) List programmer names (from programmer table) and number of packages EACH de
veloped.
30) List all the details of programmers who has done a course at S.S.I.L.
QUERIES - I
1) Find out the SELLING COST AVERAGE for the packages developed in PASCAL?
SELECT AVG(SCOST)
FROM SOFTWARE
WHERE DEV_IN LIKE 'PASCAL'
Output:
AVG(SCOST)
----------
2362.48
2) Display the names and ages of all programmers.
SELECT NAME AS NAME,FLOOR((SYSDATE-DOB)/365) AS AGE
FROM PROGRAMMER
OR
SELECT 100 + MONTHS_BETWEEN(SYSDATE,DOB)/12 FROM PROGRAMMER;
Output:
NAME AGE
-------- ----------
ANAND 34
ALTAF 36
JAGADESH 30
JULIANA 32
KAMALA 32
MARY 30
NELSON 35
PATRICK 35
QADIR 35
RAMESH 33
REBECCA 33
REMITHA 30
REVATHI 31
VIJAYA 35
3) Display the names and ages of all the programmers.
SELECT NAME
FROM STUDIES
WHERE COURSE LIKE 'DAP'
Output:
NAME
--------
NELSON
REVATHI
4) What is the highest numbers of copies sold by a package?
SELECT MAX(SOLD) FROM SOFTWARE
Output:
SOLD
----------
114
5) Display the names and date of birth of all the programmer born in JANUARY.
SELECT DOB,NAME
FROM PROGRAMMER
WHERE TO_CHAR(DOB,'MON') LIKE 'JAN'
Output:
DOB NAME
--------- --------
31-JAN-68 JULIANA
01-JAN-67 REBECCA
6) Display lowest course fee.
SELECT MIN(CCOST) FROM STUDIES
Output:
MIN(CCOST)
----------
3500
7) How many programmer has done PGDCA course.
SELECT COUNT(NAME)
FROM STUDIES
WHERE COURSE LIKE 'PGDCA'
Output:
COUNT(NAME)
-----------
3
8) How much revenue has been earned through sales of packages in C.
SELECT SUM(SOLD*SCOST)
FROM SOFTWARE
WHERE DEV_IN LIKE 'C'
Output:
SUM(SOLD*SCOST)
---------------
113775
9) Display the details of software developed by Ramesh?
SELECT *
FROM SOFTWARE
WHERE NAME='RAMESH'
Output:
NAME TITLE DEV_IN SCOST DCOST SOLD
-------- -------------------- -------- ---------- ---------- ----------
RAMESH HOTEL MANAGEMENT DBASE 12000 35000 4
RAMESH DEAD LEE PASCAL 99.95 4500 73
10) How many programmers studied at SABHARI.
SELECT COUNT(NAME) AS NOPROGRAMMERS
FROM STUDIES
WHERE SPLACE='SABHARI'
Output:
NOPROGRAMMERS
-------------
4
11) Display the details of PACKAGES whose sales crossed the 20000 mark.
SELECT *
FROM SOFTWARE
WHERE (SOLD*SCOST)>20000
Output:
NAME TITLE DEV_IN SCOST DCOST SOLD
-------- -------------------- -------- ---------- ---------- ----------
ANAND VIDEO TITLING PACK PASCAL 7500 16000 9
JAGADESH SHARES MANAGEMENT ORACLE 3000 12000 14
KAMALA PAYROLL PACKAGE DBASE 9000 20000 7
MARY FINANCILA ACC S/W ORACLE 18000 85000 4
MARY CODE GENERATOR C 4500 20000 23
MARY READ ME C++ 300 1200 84
QADIR BOMBS AWAY ASSEMBLY 499.95 530 114
QADIR VACCINES C 1900 3400 21
RAMESH HOTEL MANAGEMENT DBASE 12000 35000 4
REMITHA PC UTILITIES C 725 5000 51
REVATHI QUIZ MASTER BASIC 3200 2100 15
12) Find out the number of copies which should be sold in order to recover the d
evelopment cost of each package.
SELECT ROUND(DCOST/SCOST)
FROM SOFTWARE
WHERE SCOST*SOLD<DCOST
Output:
ROUND(DCOST/SCOST)
------------------
1
5
68
13) What is the price of the costliest software developed in BASIC?
SELECT MAX(SCOST)
FROM SOFTWARE
WHERE DEV_IN LIKE 'BASIC'
Output:
MAX(SCOST)
----------
3200
14) Display the details of packages for which development cost has been recovere
d.
SELECT *
FROM SOFTWARE
WHERE (SOLD*SCOST)>DCOST
Output:
NAME TITLE DEV_IN SCOST DCOST SOLD
-------- -------------------- -------- ---------- ---------- ----------
ANAND PARACHUTES BASIC 399.95 6000 43
ANAND VIDEO TITLING PACK PASCAL 7500 16000 9
JAGADESH SERIAL LINK UTILITY JAVA 800 7500 10
JAGADESH SHARES MANAGEMENT ORACLE 3000 12000 14
KAMALA PAYROLL PACKAGE DBASE 9000 20000 7
MARY CODE GENERATOR C 4500 20000 23
MARY READ ME C++ 300 1200 84
PATRICK GRAPHIC EDITOR PASCAL 750 5000 11
QADIR BOMBS AWAY ASSEMBLY 499.95 530 114
QADIR VACCINES C 1900 3400 21
RAMESH HOTEL MANAGEMENT DBASE 12000 35000 4
RAMESH DEAD LEE PASCAL 99.95 4500 73
REMITHA PC UTILITIES C 725 5000 51
REMITHA TSR HELP PACKAGE ASSEMBLY 2500 6000 6
REVATHI QUIZ MASTER BASIC 3200 2100 15
VIJAYA ISK EDITOR C 900 700 6
15) How many packages were developed in dbase?
SELECT COUNT(TITLE) AS TOTAL
FROM SOFTWARE
WHERE DEV_IN='DBASE'
Output:
TOTAL
----------
2
16) How many programmers studies at paragathi?
SELECT COUNT(NAME)
FROM STUDIES
WHERE SPLACE='PRAGATHI'
Output:
COUNT(NAME)
-----------
3
17) How many programmers paid 5000 to 10000 for their course?
SELECT COUNT(NAME) AS NOOFPROGRAMMERS
FROM STUDIES
WHERE CCOST>=5000
AND CCOST<=10000
Output:
NOOFPROGRAMMERS
---------------
6
30) Display the details of those who don't know Clipper, Cobol or Pascal?
SELECT *
FROM PROGRAMMER
WHERE PROF1 NOT IN ('CLIPPER','COBOL','PASCAL')
AND PROF2 NOT IN ('CLIPPER','COBOL','PASCAL')
Output:
NAME DOB DOJ S PROF1 PROF2 SALARY
-------- --------- --------- - -------- -------- ----------
JAGADESH 06-OCT-70 04-OCT-94 M ORACLE JAVA 4100
KAMALA 30-OCT-68 02-JAN-92 F C DBASE 2900
MARY 24-JUN-70 01-FEB-91 F C++ ORACLE 4500
QADIR 31-AUG-65 21-APR-93 M ASSEMBLY C 3000
REMITHA 19-APR-70 20-APR-93 F C ASSEMBLY 3600
VIJAYA 14-DEC-65 02-MAY-92 F FOXPRO C 3500
31) How many Female programmers knowing C are above 24 years of age?
SELECT COUNT(NAME) AS NOOFFPRG
FROM PROGRAMMER
WHERE SEX='F'
AND (PROF1='C' OR PROF2='C')
AND ((SYSDATE-DOB)/365) > 24
Output:
NOOFFPRG
----------
3
32) Who are the programmers who will be celebrating their Birthday within a week
?
SELECT NAME
FROM PROGRAMMER
WHERE TO_CHAR(DOB,'WW') LIKE TO_CHAR(SYSDATE,'WW')
OR
select * from programmer where
to_char(dob,'dd') between to_char(sysdate,'dd') and
to_char(next_day(sysdate,(to_char(sysdate,'day'))),'dd') and
to_char(dob,'mon') between to_char(sysdate,'mon') and
to_char(next_day(sysdate,(to_char(sysdate,'day'))),'mon')
Output:
no rows selected
33 Display the details of those with less than a year's experience?
SELECT *
FROM PROGRAMMER
WHERE FLOOR((SYSDATE - DOJ)/365)<1
Output:
NAME DOB DOJ S PROF1 PROF2 SALARY
-------- --------- --------- - -------- -------- --------
ANAND 21-APR-66 21-APR-92 M PASCAL BASIC 3200
ALTAF 02-JUL-64 13-NOV-90 M CLIPPER COBOL 2800
JAGADISH 06-OCT-70 04-OCT-94 M ORACLE JAVA 4100
JULIANA 31-JAN-68 21-APR-90 F COBOL DBASE 3000
KAMALA 30-OCT-68 02-JAN-92 F C DBASE 2900
MARY 24-JUN-70 01-FEB-91 F C++ ORACLE 4500
NELSON 11-SEP-65 11-OCT-89 M COBOL DBASE 2500
PATRICK 19-NOV-65 21-APR-90 M PASCAL CLIPPER 2800
QADIR 31-AUG-65 21-APR-93 M ASSEMBLY C 3000
RAMESH 03-MAY-67 28-FEB-91 M PASCAL DBASE 3200
REBECCA 01-JAN-67 01-DEC-90 F BASIC COBOL 2500
REMITHA 19-APR-70 20-APR-93 F C ASSEMBLY 3600
REVATHI 02-DEC-69 02-JAN-92 F PASCAL BASIC 3700
VIJAYA 14-DEC-65 02-MAY-92 F FOXPRO C 3500
14 rows selected.
34 Display the details of those who will be completing 2 years of service this y
ear?
SELECT NAME AS PRNAME
FROM PROGRAMMER WHERE FLOOR((SYSDATE-DOJ)/365)=2;
OR
select * from programmer where
(to_number(to_char(sysdate,'yyyy'))-to_number(to_char(doj,'yyyy')))=2;
OR
SELECT * FROM PROGRAMMER WHERE
(100 + MONTHS_BETWEEN('31-DEC-00',DOJ)/12)>=2 AND
(100 + MONTHS_BETWEEN(SYSDATE,DOJ)/12) != 2;
Output:
no rows selected
35 Calculate the amount to be recovered for those packages whose development cos
t has not been recovered?
SELECT (DCOST-(SCOST*SOLD)),TITLE
FROM SOFTWARE
WHERE (SCOST*SOLD)<DCOST
Output:
(DCOST-(SCOST*SOLD)) TITLE
-------------------- --------------------
3500 INVENTORY CONTROL
13000 FINANCILA ACC S/W
72800 HOTEL MANAGEMENT
36)ist the packages which have not been sold so far?
SELECT TITLE AS SOFTNAME
FROM SOFTWARE
WHERE SOLD=0
Output:
SOFTNAME
--------------------
INVENTORY CONTROL
37) Find out the cost of the software developed by Mary?
SELECT TITLE AS SOFTNAME,SCOST AS SOFTCOST
FROM SOFTWARE
WHERE NAME='MARY'
Output:
SOFTNAME SOFTCOST
-------------------- ----------
FINANCILA ACC S/W 18000
CODE GENERATOR 4500
READ ME 300
38) Display the institutes names from the studies table without duplicates?
SELECT DISTINCT SPLACE
FROM STUDIES
Output:
SPLACE
---------
APPLE
BDPS
BITS
BRILLIANT
CCIT
PRAGATHI
S.S.I.L
SABHARI
39) How many different courses are mentioned in the studies table?
SELECT DISTINCT COURSE AS COURSES
FROM STUDIES
Output:
COURS
-----
DAP
DCA
DCA/P
DCAP
DCP
DCS
HDCP
PGDCA
40) Display the names of the programmers whose names contain 2 occurrences of th
e letter A?
SELECT NAME
FROM PROGRAMMER
WHERE NAME LIKE '%A%A%'
Output:
NAME
--------
ANAND
ALTAF
JAGADESH
JULIANA
KAMALA
VIJAYA
41) Display the names of programmers whose names contain unto 5 characters?
SELECT NAME
FROM PROGRAMMER
WHERE LENGTH(NAME)=5
Output:
NAME
--------
ANAND
ALTAF
QADIR
42) How many female programmers knowing COBOL have more than 2 years experience?
SELECT NAME AS PRNAME
FROM PROGRAMMER
WHERE FLOOR((SYSDATE-DOJ)/365)>2
AND SEX='F'
AND (PROF1='COBOL' OR PROF2='COBOL')
Output:
PRNAME
--------
JULIANA
REBECCA
43) What is the length of the shortest name in the programmer table?
SELECT MIN(LENGTH(NAME)) AS SHORTNAME
FROM PROGRAMMER
Output:
SHORTNAME
----------
4
44) What is the average development cost of a package developed in COBOL?
SELECT AVG(DCOST) AS AVGCOST
FROM SOFTWARE
WHERE DEV_IN='COBOL'
Output:
AVGCOST
----------
3500
45) Display the name,sex,dob(DD/MM/YY format), doj for all the programmers witho
ut using conversion function?
SELECT NAME AS PRNAME, SEX AS SEX, SUBSTR(DOB,1,2)||'/'||SUBSTR(DOB,4,3)||'/'||S
UBSTR(DOB,8,2) AS DATEOFBIRTH, SUBSTR(DOJ,1,2)||'/'||SUBSTR(DOJ,4,3)||'/'||SUBST
R(DOJ,8,2) AS DATEOFJOIN FROM PROGRAMMER
Output:
PRNAME S DATEOFBIR DATEOFJOI
-------- - --------- ---------
ANAND M 21/APR/66 21/APR/92
ALTAF M 02/JUL/64 13/NOV/90
JAGADESH M 06/OCT/70 04/OCT/94
JULIANA F 31/JAN/68 21/APR/90
KAMALA F 30/OCT/68 02/JAN/92
MARY F 24/JUN/70 01/FEB/91
NELSON M 11/SEP/65 11/OCT/89
PATRICK M 19/NOV/65 21/APR/90
QADIR M 31/AUG/65 21/APR/93
RAMESH M 03/MAY/67 28/FEB/91
REBECCA F 01/JAN/67 01/DEC/90
REMITHA F 19/APR/70 20/APR/93
REVATHI F 02/DEC/69 02/JAN/92
VIJAYA F 14/DEC/65 02/MAY/92
46) Who are the programmers who were born on the last day of the month?
SELECT NAME AS PRNAME
FROM PROGRAMMER
WHERE LAST_DAY(DOB) LIKE DOB
Output:
PRNAME
--------
JULIANA
QADIR
47) What is the amount paid in salaries of the male programmers who do not know
Cobol?
SELECT SALARY AS SALOFPR
FROM PROGRAMMER
WHERE SEX='M'
AND (PROF1!='COBOL'
OR PROF2!='COBOL)
Output:
SALOFPR
----------
3200
2800
4100
2500
2800
3000
3200
48) Display the title, scost, dcost and difference between scost and dcost in de
scending order of difference?
SELECT TITLE AS SOFTNAME,SCOST AS SOFTCOST,DCOST AS DEVCOST,DCOST - SCOST DIFF F
ROM SOFTWARE
ORDER BY 4 DESC
Output:
SOFTNAME SOFTCOST DEVCOST DIFF
-------------------- ---------- ---------- ----------
HOTEL MANAGEMENT 1100 75000 73900
FINANCILA ACC S/W 18000 85000 67000
HOTEL MANAGEMENT 12000 35000 23000
CODE GENERATOR 4500 20000 15500
PAYROLL PACKAGE 9000 20000 11000
SHARES MANAGEMENT 3000 12000 9000
VIDEO TITLING PACK 7500 16000 8500
SERIAL LINK UTILITY 800 7500 6700
PARACHUTES 399.95 6000 5600.05
DEAD LEE 99.95 4500 4400.05
PC UTILITIES 725 5000 4275
GRAPHIC EDITOR 750 5000 4250
TSR HELP PACKAGE 2500 6000 3500
VACCINES 1900 3400 1500
READ ME 300 1200 900
INVENTORY CONTROL 3000 3500 500
BOMBS AWAY 499.95 530 30.05
ISK EDITOR 900 700 -200
QUIZ MASTER 3200 2100 -1100
49) Display the name, dob, doj of those month of birth and month of joining are
same?
SELECT NAME AS PRNAME
FROM PROGRAMMER
WHERE TO_CHAR(DOB,'MM')=TO_CHAR(DOJ,'MM')
Output:
PRNAME
--------
ANAND
JAGADESH
REMITHA
50) Display the names of the packages whose names contain more than 1 word?
SELECT TITLE AS PACKAGES
FROM SOFTWARE
WHERE TITLE LIKE '% %'
Output:
PACKAGES
--------------------
VIDEO TITLING PACK
SERIAL LINK UTILITY
SHARES MANAGEMENT
INVENTORY CONTROL
PAYROLL PACKAGE
FINANCILA ACC S/W
CODE GENERATOR
READ ME
GRAPHIC EDITOR
BOMBS AWAY
HOTEL MANAGEMENT
DEAD LEE
PC UTILITIES
TSR HELP PACKAGE
HOTEL MANAGEMENT
QUIZ MASTER
ISK EDITOR
QUERIES - II
4) Display THE COSTLIEST packages and HIGEST selling developed in EACH language.
SELECT DEV_IN AS LANGAUGE,MAX(SCOST) AS COSTPACK,MAX(SOLD) AS HIGHPACK
SFROM SOFTWARE
GROUP BY DEV_IN
Output:
LANGAUGE COSTPACK HIGHPACK
-------- ---------- ----------
ASSEMBLY 2500 114
BASIC 3200 43
C 4500 51
C++ 300 84
COBOL 3000 0
DBASE 12000 7
JAVA 800 10
ORACLE 18000 14
PASCAL 7500 73
5) Display THE NUMBER OF people BORN in EACH YEAR.
SELECT TO_CHAR(DOB,'YY') AS YEAR,COUNT(NAME) AS PRNO
FROM PROGRAMMER
GROUP BY TO_CHAR(DOB,'YY')
Output:
YE PRNO
-- ----------
64 1
65 4
66 1
67 2
68 2
69 1
70 3
6) Display THE NUMBER OF people JOINED in EACH YEAR.
SELECT TO_CHAR(DOJ,'YY') AS YEAR,COUNT(NAME) AS PRNO
FROM PROGRAMMER
GROUP BY TO_CHAR(DOJ,'YY')
Output:
YE PRNO
-- ----------
89 1
90 4
91 2
92 4
93 2
94 1
22) Display EACH institute name with NUMBER of courses, AVERAGE cost per course.
SELECT SPLACE AS INSTITUTE,COUNT(COURSE) AS NOOFCOURS,AVG(CCOST) AS AVGCOSTPERCO
UR
FROM STUDIES
GROUP BY SPLACE
Output:
INSTITUTE NOOFCOURS AVGCOSTPERCOUR
--------- ---------- --------------
APPLE 1 14000
BDPS 2 27000
BITS 1 22000
BRILLIANT 1 11000
CCIT 1 7200
PRAGATHI 3 5466.66667
S.S.I.L 1 3500
SABHARI 4 4625
23) Display EACH institute name with NUMBER of students.
SELECT SPLACE AS INSTITUTE,COUNT(NAME) AS NOOFSTUD
FROM STUDIES
GROUP BY SPLACE
Output:
INSTITUTE NOOFSTUD
--------- ----------
APPLE 1
BDPS 2
BITS 1
BRILLIANT 1
CCIT 1
PRAGATHI 3
S.S.I.L 1
SABHARI 4
24) Display names of male and female programmers.
SELECT NAME AS PRNAME,SEX AS SEX
FROM PROGRAMMER
ORDER BY SEX
Output:
PRNAME S
-------- -
JULIANA F
KAMALA F
MARY F
REMITHA F
VIJAYA F
REVATHI F
REBECCA F
ANAND M
PATRICK M
RAMESH M
QADIR M
NELSON M
ALTAF M
JAGADESH M
28) Display the AVERAGE difference BETWEEN scost and dcost for EACH language.
SELECT DEV_IN AS LANGUAGE,AVG(DCOST - SCOST) AS DIFF
FROM SOFTWARE
GROUP BY DEV_IN
Output:
AVG(DCOST-SCOST)
----------------
1765.025
2250.025
5268.75
900
500
17000
6700
38000
22762.52
29) Display the TOTAL scost, dcsot and amount TOBE recovered for EACH programmer
for whose dcost HAS NOT YET BEEN recovered.
SELECT SUM(SCOST), SUM(DCOST), SUM(DCOST-(SOLD*SCOST))
FROM SOFTWARE
GROUP BY NAME
HAVING SUM(DCOST)>SUM(SOLD*SCOST)
Output:
SUM(SCOST) SUM(DCOST) SUM(DCOST-(SOLD*SCOST))
---------- ---------- -----------------------
3000 3500 3500
4300 77100 26900
30) Display highest, lowest and average salaries for THOSE earning MORE than 200
0.
SELECT MAX(SALARY), MIN(SALARY), AVG(SALARY)
FROM PROGRAMMER
WHERE SALARY > 2000
Output:
MAX(SALARY) MIN(SALARY) AVG(SALARY)
----------- ----------- -----------
4500 2500 3235.7143
QUERIES - III
10) Which female programmer earns MORE than 3000/- but DOES NOT know C, C++, Ora
cle or Dbase?
SELECT * FROM PROGRAMMER
WHERE SEX LIKE 'F'
AND SALARY >3000
AND (PROF1 NOT IN('C','C++','ORACLE','DBASE')
OR PROF2 NOT IN('C','C++','ORACLE','DBASE'))
Output:
NAME DOB DOJ S PROF1 PROF2 SALARY
-------- --------- --------- - -------- -------- ---------
REMITHA 19-APR-70 20-APR-93 F C ASSEMBLY 3600
REVATHI 02-DEC-69 12-JAN-92 F PASCAL BASIC 3700
VIJAYA 14-DEC-65 12-MAY-92 F FOXPRO C 3500
11) Which is the COSTLIEST course?
SELECT COURSE
FROM STUDIES
WHERE CCOST = (SELECT MAX(CCOST) FROM STUDIES)
Output:
COURS
-----
DCA
30) Who are the authors of packages, WHICH have recovered MORE THAN double the d
evelopment cost?
SELECT NAME distinct
FROM SOFTWARE
WHERE SOLD*SCOST > 2*DCOST
Output:
NAME
--------
ANAND
JAGDESH
KAMALA
MARY
QADIR
REMITHA
REVATHI
VIJAYA
31) Display programmer names and CHEAPEST package developed by them in EACH lang
uage?
SELECT NAME,TITLE
FROM SOFTWARE
WHERE DCOST IN (SELECT MIN(DCOST)
FROM SOFTWARE
GROUP BY DEV_IN)
Output:
NAME TITLE
-------- --------------------
QADIR BOMBOS AWAY
VIJAYA ISK EDITOR
MARY READ ME
REVATHI QUIZ MASTER
JULIANA INVENTORY CONTROL
RAMESH DEAD LEE
JAGADESH SERIAL LINK UTILITY
JAGDESH SHARES MANAGMENT
KAMALA PAYROLL PACKAGE
MARY CODE GENERATOR
32) Who is the YOUNGEST male programmer born in 1965?
SELECT NAME
FROM PROGRAMMER
WHERE DOB=(SELECT (MAX(DOB))
FROM PROGRAMMER
WHERE TO_CHAR(DOB,'YYYY') LIKE '1965')
Output:
NAME
--------
VIJAYA
33) Display language used by EACH programmer to develop the HIGEST selling and L
OWEST selling package.
SELECT NAME, DEV_IN
FROM SOFTWARE
WHERE SOLD IN (SELECT MAX(SOLD)
FROM SOFTWARE
GROUP BY NAME)
UNION
SELECT NAME, DEV_IN
FROM SOFTWARE
WHERE SOLD IN (SELECT MIN(SOLD)
FROM SOFTWARE
GROUP BY NAME)
Output:
NAME DEV_IN
-------- --------
ANAND BASIC
ANAND PASCAL
JAGADESH JAVA
JAGDESH ORACLE
JULIANA COBOL
KAMALA DBASE
MARY C++
MARY ORACLE
PATRICK PASCAL
QADIR ASSEMBLY
QADIR C
RAMESH DBASE
RAMESH PASCAL
REMITHA ASSEMBLY
REMITHA C
REVATHI BASIC
REVATHI PASCAL
VIJAYA C
34) Who is the OLDEST female programmer WHO joined in 1992
SELECT NAME
FROM PROGRAMMER
WHERE DOJ=(SELECT (MIN(DOJ))
FROM PROGRAMMER
WHERE TO_CHAR(DOJ,'YYYY') LIKE '1992')
Output:
NAME
--------
KAMALA
REVATHI
35) In WHICH year where the MOST NUMBER of programmer born?
SELECT DISTINCT TO_CHAR(DOB,'YYYY')
FROM PROGRAMMER
WHERE TO_CHAR(DOJ,'YYYY') = (SELECT MIN(TO_CHAR(DOJ,'YYYY'))
FROM PROGRAMMER)
Output:
TO_C
----
1965
2) Display the details of software developed by male programmers earing MORE tha
n 3000.
select software.*
from programmer p,software s
where p.name=s.name and salary>3000 and sex='m';
3) Display details of packages developed in PASCAL by female programmers.
select s.*
from programmer p,software s
where p.name=s.name and sex='f' and dev_in='pascal';
4) Display the details of these programmer WHO joined BEFORE 1990.
select *
from programmer
where to_char(doj,'yy')<90;
5)Display details of software developed in C by female programmers of PRAGATHI.
select s.*
from software s,studies st,programmer p
where s.name=st.name and p.name=s.name and sex='f' and splace='pragathi
';
6) Display NUMBER of packages NUMBER of copies sold and sales value of EACH prog
rammer Institute-wise.
Select studies.splace, count(software.dev_in), count(software.sold), su
m(software.sold*software.scost)
from software,studies
where software.name=studies.name group by studies.splace;
10) Display details of software that was developed in the language which is NITH
ER first NOR second proficiency of the programmer.
select s.*
from programmer p,software s
where s.name=p.name and (dev_in <> prof1 and dev_in <> prof2);
11) Display details of software developed by male students of SABHARI.
select s.*
from programmer p,software s,studies st
where p.name=s.name and s.name=st.name and sex='m' and splace='sabhari'
;
12) Display the names of programmers WHO HAVE NOT developed any package.
select name
from programmer
where name not in(select name
from software);
or
select distinct name from programmer minus
select distinct name from software;
13) What is the total cost of the software developed by the programmers by APPL
E?
select sum(scost)
from software s,studies st
where s.name=st.name and splace='apple';
or
select sum(x.scost) from software x, studies y where
x.name=y.name
group by y.splace
having
y.splace = 'APPLE'
14) Who are the programmers WHO JOINED in the same day?
select a.name,a.doj
from programmer a,programmer b
where a.doj=b.doj and a.name <> b.name;
or
select name from programmer where to_char(doj,'dd')=
any(select to_char(doj,'dd') from programmer
group by
to_Char(doj,'dd')
having
count(*)>1)
15) Who are the programmers WHO HAVE THE SAME PROF2?
select unique(a.name),a.prof2
from programmer a,programmer b
where a.prof2=b.prof2 and a.name <> b.name;
or
select name from programmer where prof2 = any(
select prof2 from programmer group by prof2 having count(*) >1);
18) Which language listed in prof1 and prof2 HAS NOT BEEN used to develop any pa
ckage?
select prof1
from programmer
where prof1 not in(select dev_in
from software) union
select prof2
from programmer
where prof2 not in(select dev_in from software);
or
(select distinct prof1 from prgrammer union
select distinct prof2 from programmer) minus
select distinct dev_in from software;
19) How much does the person WHO developed the HIGHEST selling package earn and
WHAT course did he/she undergo?
select p1.salary,s2.course
from programmer p1,software s1,studies s2
where p1.name=s1.name and s1.name=s2.name and scost=(select
max(scost) from software);
20) How many months will it take for each programmer to recover the cost of the
course underwent?
select p.name,ceil(ccost/salary)
from programmer p,studies s
where s.name=p.name;
21) Which is the COSTLIEST package developed by a person with under 3 years expe
nence?
select dev_in
from programmer p,software s
where p.name=s.name and dcost= (select max(software.dcost)
from programmer p, software s
where p.name=s.name and to_char(round(((sysdate-
doj)/365)+100))<3);
or
select x.title from software x, programmer y where
(months_between(sysdate, y.doj)/12) > 3 and
x.name=y.name;
22) What is the AVERAGE salary for those WHOSE software's sales value is more th
an 50,000?
select avg(salary)
from programmer p,software s
where p .name=s.name and sold*scost>50000;
23) How many packages were developed by the students WHO studied in the institut
e that Charge the LOWEST course fee?
select count(s.name)
from software s,studies st
where s.name=st.name group by s.name,ccost having min(ccost)=(select min(ccost)
from studies);
24) How many packages were developed by the person WHO developed the CHEAPEST pa
ckage. Where did he\she study?
select count(*)
from programmer p,software s
where s .name=p.name group by dev_in having min(dcost)=(select min(dcost) from s
oftware);
25) How many packages were developed by female programmers earning MORE than the
HIGHEST paid male programmer?
select count(dev_in)
from programmer p,software s
where s.name=p.name and sex='f' and salary>(select max(salary)
from programmer p,software s
where s.name=p.name and sex='m');
26) How many packages were developed by the MOST experienced programmers from BD
PS.
select count(*)
from software s,programmer p
where p.name=s.name group by doj having max(doj)=(select max(doj)
from studies st,programmer p, software s
where p.name=s.name and st.name=p.name and (splace='bdps'));
or
select count(x.name) from software x, programmer y, studies x where
months_between(sysdate, y.doj)/12) = (select max(months_between(sysdate,y.doj)/1
2)
from programmer y, studies = where
x.splace = 'BDPS' and y.name = z.name) and
x.name=y.name and
z.splace='BDPS'
27) List the programmers (from software table) and institutes they studied, incl
uding those WHO DIDN'T develop any package.
select name,splace
from studies
where name not in(select name
from software);
or
(select distinct x.name, z.splace from programmer x, software y, studies z where
x.name not in (select y.name from software y) and
x.name = z.name) union
(select distinct y.name, z.splace from
software y, studies z where y.name=z.name);
28) List each profit with the number of programmers having that prof1 and the nu
mber of packages developed in that prof1.
select count(*),sum(scost*sold-dcost) "PROFIT"
from software
where dev_in in (select prof1
from programmer) group by dev_in;
29) List programmer names (from programmer table) and number of packages EACH de
veloped.
select s.name,count(dev_in)
from programmer p1,software s
where p1.name=s.name group by s.name;
or
select programmer name, count(title) from programmer , software
where
programmer name = software.name(+)
group by programmer.name;
30) List all the details of programmers who has done a course at S.S.I.L.
select programmer.*
from programmer,studies
where splace='SSIL' and programmer.name=software.name and programmer.name=studie
s.name and studies.splace='s.s.i.l.';