The document contains a series of SQL exercises and their solutions related to database systems, specifically focusing on employee (EMP), department (DEPT), and salary grade (SALGRADE) tables. Each exercise includes various SQL queries that demonstrate data retrieval, filtering, aggregation, and joining techniques. The exercises are structured to enhance understanding of SQL operations within the context of a database management course.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
2 views
SQL Practice Problem1 Sol
The document contains a series of SQL exercises and their solutions related to database systems, specifically focusing on employee (EMP), department (DEPT), and salary grade (SALGRADE) tables. Each exercise includes various SQL queries that demonstrate data retrieval, filtering, aggregation, and joining techniques. The exercises are structured to enhance understanding of SQL operations within the context of a database management course.
10. SELECT ENAME, ISNULL(SAL,0) + ISNULL(COMM,0) AS “Remuneration”
FROM EMP;
11. SELECT * FROM EMP
WHERE YEAR(HIREDATE) = ‘1983’;
12. SELECT ENAME, SAL * 12 “Annual Salary”, COMM
FROM EMP WHERE UPPER(JOB)=’SALESMAN’ AND SAL > ISNULL(COMM,0) ORDER BY SAL DESC;
13. SELECT * FROM EMP ORDER BY MGR;
Exercise 2
1. SELECT ENAME, ROUND(SAL*1.15) AS INC_SAL FROM EMP;
2. SELECT ENAME, HIREDATE FROM EMP
WHERE DEPTNO=20;
3. SELECT ENAME, HIREDATE, DATEADD(YEAR, 1, HIREDATE) AS REVIEWDATE
FROM EMP ORDER BY DATEADD(YEAR, 1, HIREDATE);
4. (SELECT EMPNO, ENAME, 'Below 1500' AS SALARY
FROM EMP WHERE SAL < 1500) UNION (SELECT EMPNO, ENAME, 'On Target' FROM EMP WHERE SAL = 1500) UNION (SELECT EMPNO, ENAME, CONVERT(VARCHAR, SAL) FROM EMP WHERE SAL > 1500);
5. SELECT DATENAME(DW, HIREDATE)
FROM EMP;
6. SELECT ENAME, HIREDATE,
NEXT_DAY(LAST_DAY(ROUND(HIREDATE,’MONTH’))-7,’FRIDAY’) AS PAYDATE FROM EMP ORDER BY HIREDATE;
7. SELECT EMPNO, ENAME,
ROUND(MONTHS_BETWEEN(SYSDATE, HIREDATE)) || ‘ months’ AS TIMELEN FROM EMP;
Exercise 3
1. SELECT MIN(SAL) FROM EMP;
2. SELECT MIN(SAL), MAX(SAL), AVG(SAL) FROM EMP;
3. SELECT JOB, MIN(SAL), MAX(SAL)
FROM EMP GROUP BY JOB;
4. SELECT COUNT(DISTINCT MGR) FROM EMP;
5. SELECT JOB, AVG(SAL), AVG(SAL+ISNULL(COMM,0)) AS “AVG(RENUMERATION)”
FROM EMP GROUP BY JOB;
6. SELECT MAX(SAL) – MIN(SAL) FROM EMP;
7. SELECT DNAME FROM EMP, DEPT
WHERE EMP.DEPTNO = DEPT.DEPTNO GROUP BY DNAME HAVING COUNT(EMPNO) > 3;