728x90
1. customer 테이블과 gift테이블을 join하여 고객이 자기 포인트보다 낮은 포인트의 상품 중 한 가지를 선택할 수 있다고 할 때 notebook을 선택할 수 있는 고객명과 포인트, 상품명을 출력하세요.
SELECT C.GNAME, C.POINT, G.GNAME
FROM CUSTOMER C, GIFT G
WHERE C.POINT >= G.G_START
AND G.GNAME = 'Notebook'
2. PROFESSOR 테이블에서 교수의 번호, 교수 이름, 입사일, 자신보다 입사일 빠른 사람 인원수를 출력하세요.
단 자신보다 입사일이 빠른 사람 수를 오름차순으로 출력하세요.
SELECT P1.PROFNO, P1.NAME, TO_CHAR(P1.HIREDATE, 'YYYY/MM/DD') HIREDATE, COUNT(NVL2(P2.PROFNO, P1.PROFNO, NULL)) COUNT
FROM PROFESSOR P1, PROFESSOR P2
WHERE P1.HIREDATE > P2.HIREDATE(+)
GROUP BY P1.PROFNO, P1.NAME, P1.HIREDATE
ORDER BY COUNT ASC
3. EMP 테이블에서 사원번호, 사원이름, 입사일, 자신보다 먼저 입사한 사람 인원수를 출력하세요.
SELECT E1.EMPNO, E1.ENAME, TO_CHAR(E1.HIREDATE, 'YY/MM/DD') AS HIREDATE, COUNT(NVL2(E2.EMPNO, E1.EMPNO, NULL)) COUNT
FROM EMP E1, EMP E2
WHERE E1.HIREDATE > E2.HIREDATE(+)
GROUP BY E1.EMPNO, E1.ENAME, E1.HIREDATE
ORDER BY COUNT ASC;
728x90
'데이터베이스 > Oracle SQL' 카테고리의 다른 글
오라클 SQL과 PL/SQL ( ALTER / TRUNCATE / DROP ) (0) | 2021.08.25 |
---|---|
오라클 SQL과 PL/SQL ( DDL - CREATE ) (0) | 2021.08.23 |
오라클 SQL과 PL/SQL ( JOIN 연습문제 - 1 ) (0) | 2021.08.18 |
오라클 SQL과 PL/SQL ( OUTER JOIN 주의사항 / SELF JOIN ) (0) | 2021.08.18 |
오라클 SQL과 PL/SQL ( OUTER JOIN ) (0) | 2021.08.13 |