Professional Documents
Culture Documents
SQL Queries
SQL Queries
not null
not null
not null
not null
varchar2(8)
date
date
varchar2(1)
varchar2(8)
varchar2(8)
not null number(4)
name
date of birth
date of joining
male or female
known language 1
known language 2
salary
Entry eg:
Gopal 21-apr-66 21-apr-92 m pascal basic 3200
2) Table name - software
name
not null
varchar2(8)
title
not nullvarchar2(20)
dev_in not null
varchar2(8)
scost
number(7,2)
dcost
number(5)
sold
number(3)
name
developed project name
language developed
software cost
development cost
number of software sold
Entry eg:
Gopal 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:
Gopal Sabhari pgdca 4500
devdutt bdps dcs 5000
QUERIES - I
patel_gopal@rediffmail.com
Page
1 of 49
patel_gopal@rediffmail.com
Page
2 of 49
patel_gopal@rediffmail.com
Page
3 of 49
patel_gopal@rediffmail.com
Page
4 of 49
patel_gopal@rediffmail.com
Page
5 of 49
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
patel_gopal@rediffmail.com
Page
6 of 49
SOLD
35000
73
patel_gopal@rediffmail.com
Page
7 of 49
patel_gopal@rediffmail.com
Page
8 of 49
14) Display the details of packages for which development cost has been recovered.
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
patel_gopal@rediffmail.com
Page
9 of 49
patel_gopal@rediffmail.com
Page
10 of 49
patel_gopal@rediffmail.com
Page
11 of 49
10
6
8
10
25) Who are the programmers who celebrate their birthday during the current month?
SELECT NAME
FROM PROGRAMMER
WHERE TO_CHAR(DOB,'MM')=TO_CHAR(SYSDATE,'MM')
Output:
NAME
-------ANAND
REMITHA
26) How many female programmers are there?
SELECT COUNT(NAME) AS NOFPROG
FROM PROGRAMMER
WHERE SEX='F'
Output:
NO_OF_FEMALE_PROGRAMMERS
-----------------------7
patel_gopal@rediffmail.com
Page
12 of 49
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
patel_gopal@rediffmail.com
Page
13 of 49
patel_gopal@rediffmail.com
Page
14 of 49
34 Display the details of those who will be completing 2 years of service this year?
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 cost 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
patel_gopal@rediffmail.com
Page
15 of 49
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 the letter A?
SELECT NAME
FROM PROGRAMMER
WHERE NAME LIKE '%A%A%'
Output:
NAME
-------ANAND
patel_gopal@rediffmail.com
Page
16 of 49
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
patel_gopal@rediffmail.com
Page
17 of 49
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)
patel_gopal@rediffmail.com
Page
18 of 49
patel_gopal@rediffmail.com
Page
19 of 49
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
1) Display THE NUMBER OF packages developed in EACH language.
SELECT DEV_IN AS LANGUAGE,COUNT(TITLE) AS NOOFPACK
FROM SOFTWARE
GROUP BY DEV_IN
Output:
LANGUAGE NOOFPACK
-------- ---------ASSEMBLY
2
BASIC
2
C
4
C++
1
COBOL
1
DBASE
2
JAVA
1
ORACLE
2
PASCAL
4
patel_gopal@rediffmail.com
Page
20 of 49
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
patel_gopal@rediffmail.com
Page
21 of 49
3000
0
12000
7
800
10
18000
14
7500
73
patel_gopal@rediffmail.com
Page
22 of 49
patel_gopal@rediffmail.com
Page
23 of 49
patel_gopal@rediffmail.com
Page
24 of 49
1
1
1
3
1
4
patel_gopal@rediffmail.com
Page
25 of 49
patel_gopal@rediffmail.com
Page
26 of 49
19) Display the sales COST of packages developed by EACH programmer language wise.
SELECT SUM(SCOST) AS SELLCOST
FROM SOFTWARE
GROUP BY DEV_IN
Output:
SELLCOST
---------2999.95
3599.95
8025
300
3000
21000
800
21000
9449.92
patel_gopal@rediffmail.com
Page
27 of 49
22) Display EACH institute name with NUMBER of courses, AVERAGE cost per course.
SELECT SPLACE AS INSTITUTE,COUNT(COURSE) AS NOOFCOURS,AVG(CCOST) AS
AVGCOSTPERCOUR
FROM STUDIES
GROUP BY SPLACE
Output:
patel_gopal@rediffmail.com
Page
28 of 49
patel_gopal@rediffmail.com
Page
29 of 49
patel_gopal@rediffmail.com
Page
30 of 49
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 2000.
SELECT MAX(SALARY), MIN(SALARY), AVG(SALARY)
FROM PROGRAMMER
WHERE SALARY > 2000
Output:
MAX(SALARY) MIN(SALARY) AVG(SALARY)
----------- ----------- -----------
patel_gopal@rediffmail.com
Page
31 of 49
2500 3235.7143
QUERIES - III
1) Who is the highest paid C programmer?
SELECT * FROM PROGRAMMER
WHERE SALARY=(SELECT MAX(SALARY)
FROM PROGRAMMER
WHERE PROF1 LIKE 'C' OR PROF2 LIKE 'C')
Output:
NAME DOB
DOJ
S PROF1 PROF2
SALARY
-------- --------- --------- - -------- -------- --------REMITHA 19-APR-70 20-APR-93 F C
ASSEMBLY
3600
2) Who is the highest paid female cobol programmer?
SELECT * FROM PROGRAMMER
WHERE SALARY=(SELECT MAX(SALARY)
FROM PROGRAMMER
WHERE (PROF1 LIKE 'COBOL' OR PROF2 LIKE 'COBOL'))
AND SEX LIKE 'F'
Output:
NAME DOB
DOJ
S PROF1 PROF2
SALARY
-------- --------- --------- - -------- -------- --------JULIANA 31-JAN-68 21-APR-90 F COBOL DBASE
3000
3) Display the name of the HIGEST paid programmer for EACH language (prof1)
SELECT DISTINCT NAME, SALARY, PROF1
FROM PROGRAMMER
WHERE (SALARY,PROF1) IN (SELECT MAX(SALARY),PROF1
FROM PROGRAMMER
GROUP BY PROF1)
Output:
NAME
SALARY PROF1
-------- --------- -------REBECCA
2500 BASIC
ALTAF
2800 CLIPPER
DADIR
3000 ASSEMBLY
JULIANA
3000 COBOL
VIJAYA
3500 FOXPRO
REMITHA
3600 C
REVATHI
3700 PASCAL
JAGADESH
4100 ORACLE
MARY
4500 C++
4) Who is the LEAST experienced programmer?
SELECT FLOOR((SYSDATE-DOJ)/365) EXP,NAME
patel_gopal@rediffmail.com
Page
32 of 49
patel_gopal@rediffmail.com
Page
33 of 49
patel_gopal@rediffmail.com
Page
34 of 49
patel_gopal@rediffmail.com
Page
35 of 49
patel_gopal@rediffmail.com
Page
36 of 49
patel_gopal@rediffmail.com
Page
37 of 49
21) Which language was used to develop the package WHICH has the HIGEST sales amount?
SELECT DEV_IN,SCOST
FROM SOFTWARE
WHERE SCOST = (SELECT MAX(SCOST) FROM SOFTWARE)
Output:
DEV_IN
SCOST
-------- --------ORACLE
18000
22) How many copies of the package that has the LEAST DIFFRENCE between development
and selling cost were sold?
SELECT SOLD,TITLE
FROM SOFTWARE
WHERE TITLE = (SELECT TITLE
FROM SOFTWARE
WHERE (DCOST-SCOST)=(SELECT MIN(DCOST-SCOST) FROM SOFTWARE))
Output:
SOLD TITLE
---- -------------------15 QUIZ MASTER
23) Which is the COSTLIEAST package developed in PASCAL?
SELECT TITLE
FROM SOFTWARE
WHERE DCOST = (SELECT MAX(DCOST)
FROM SOFTWARE
WHERE DEV_IN LIKE 'PASCAL')
Output:
TITLE
-------------------HOTEL MANAGEMENT
24) Which language was used to develop the MOST NUMBER of package?
SELECT DEV_IN FROM SOFTWARE
GROUP BY DEV_IN
HAVING MAX(DEV_IN) = (SELECT MAX(DEV_IN) FROM SOFTWARE)
Output:
DEV_IN
-------PASCAL
25) Which programmer has developed the HIGEST NUMBER of package?
SELECT NAME FROM SOFTWARE
GROUP BY NAME
patel_gopal@rediffmail.com
Page
38 of 49
patel_gopal@rediffmail.com
Page
39 of 49
30) Who are the authors of packages, WHICH have recovered MORE THAN double the
development 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
language?
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
patel_gopal@rediffmail.com
Page
40 of 49
33) Display language used by EACH programmer to develop the HIGEST selling and LOWEST
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
patel_gopal@rediffmail.com
Page
41 of 49
patel_gopal@rediffmail.com
Page
42 of 49
QUERY - IV
1) Display the details of THOSE WHO are drawing the same salary.
patel_gopal@rediffmail.com
Page
43 of 49
7) Display details of software developed in DBASE by male programmers WHO belong to the
institute on which MOST NUMBER OF programmers studies.
select software.*
from programmer,software,studies
where programmer.name=software.name and software.name=studies.name and
programmer.name=studies.name
and sex='m' and dev_in='dbase' and splace= (select
splace
from studies group by splace having count(splace)
=(select
max(count(splace))
from studies group by splace));
8) Display the details of the software that was developed by male programmers born BEFORE
1965 and female programmers born AFTER 1975.
select software.*
patel_gopal@rediffmail.com
Page
44 of 49
patel_gopal@rediffmail.com
Page
45 of 49
patel_gopal@rediffmail.com
Page
46 of 49
22) What is the AVERAGE salary for those WHOSE software's sales value is more than 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 institute 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
package. 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 software);
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');
patel_gopal@rediffmail.com
Page
47 of 49
patel_gopal@rediffmail.com
Page
48 of 49
patel_gopal@rediffmail.com
Page
49 of 49