DBMS-1
DBMS-1
LIBRARY DATABASE
1.CREATE TABLE PUBLISHER (NAME VARCHAR(20) PRIMARY KEY, PHONE INTEGER,
ADDRESS VARCHAR(20)); DESC PUBLISHER;
2.CREATE TABLE BOOK (BOOK_ID INTEGER PRIMARY KEY,TITLE VARCHAR(20),
PUB_YEAR VARCHAR(20), PUB_NAME VARCHAR(20),FOREIGN KEY (PUB_NAME) REFERENCES
PUBLISHER(NAME) ON DELETE CASCADE); DESC BOOK;
Queries…….. ->
1.SELECT GRADE, COUNT(DISTINCT CUSTOMER_ID) FROM CUSTOMER GROUP BY
GRADE HAVING GRADE > (SELECT AVG(GRADE)FROM CUSTOMER WHERE
CITY='BANGALORE');
INSERT INTO IAMARKS (USN, SUBCODE, SSID, TEST1, TEST2, TEST3) VALUES
('1BI15CS101','10CS81','CSE8C', 15, 16, 18);
5.SELECT
S.USN,S.SNAME,SS.SEM,SS.SEC,SUB.TITLE,IA.TEST1,IA.TEST2,IA.TEST3,IA.FINALIA,
(
CASE
WHEN IA.FINALIA BETWEEN 17 AND 20 THEN 'OUTSTANDING'
WHEN IA.FINALIA BETWEEN 12 AND 16 THEN 'AVERAGE'
ELSE 'WEAK'
END) AS CAT
FROM STUDENT S, SEMSEC SS,SUBJECT SUB, IAMARKS IA
WHERE S.USN=IA.USN AND SS.SSID=IA.SSID AND SUB.SUBCODE=IA.SUBCODE AND
SS.SEM=8 AND
SS.SEC IN('A','B','C');
5.COMPANY DATABASE:
CREATE TABLE DEPARTMENT(DNO VARCHAR(20) PRIMARY KEY, DNAME
VARCHAR(20), MGR_SSN VARCHAR(20), MGR_START_DATE DATE); DESC
DEPARTMENT;
INSERT INTO EMPLOYEE (SSN, NAME, ADDRESS, SEX, SALARY) VALUES ('ABC01','BEN
SCOTT','BANGALORE','M', 450000);
QUERY 1:
(SELECT DISTINCT P.PNO
FROM PROJECT P, DEPARTMENT D, EMPLOYEE E
WHERE P.DNO=D.DNO
AND D.MGRSSN=E.SSN
AND E.LNAME='SOCTT')
UNION
(SELECT DISTINCT P1.PNO
FROM PROJECT P1, WORKS_ON W, EMPLOYEE E1
WHERE P1.PNO=W.PNO
AND E1.SSN=W.SSN
AND E1.LNAME='SOCTT');
QUERY 2:
SELECT E.FNAME, E.LNAME, 1.1*E.SALARY AS INCR_SAL FROM
EMPLOYEE E, WORKS_ON W, PROJECT P
WHERE E.SSN=W.SSN
AND W.PNO=P.PNO
AND P.PNAME='IOT';
QUERY 3:
SELECT SUM(E.SALARY)AS TOTAL_SALARY, MAX(E.SALARY)AS MAXIMUM,
MIN(E.SALARY) AS
MINIMUM, AVG(E.SALARY) AS AVERAGE
FROM EMPLOYEE E, DEPARTMENT D
WHERE E.DNO=D.DNO
AND D.DNAME='ACCOUNTS';
QUERY 4:
SELECT E.FNAME, E.LNAME
FROM EMPLOYEE E
WHERE NOT EXISTS
(SELECT PNO FROM PROJECT P WHERE DNO=5
AND P.PNO NOT IN(SELECT PNO FROM WORKS_ON WHERE E.SSN=SSN));
QUERY 5:
SELECT E.DNO, COUNT(*) AS NO_OF_EMPLOYEE
FROM EMPLOYEE E
WHERE E.SALARY>600000
AND E.DNO IN (SELECT E1.DNO
FROM EMPLOYEE E1
GROUP BY E1.DNO
HAVING COUNT(*)>5)
GROUP BY E.DNO;