ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [ 오라클] 예제01 - 기호, 연산자, SELECT문
    비전공자 공부일기/:: DB - SQL 2019. 5. 21. 09:53

    <오라클 DB 예제 - 기호, 연산자, SELECT 문>

     

    --문제1.사원이름이 SCOTT인 사원 검색

    --문제2.급여가 1500이하인 사원 검색

    --문제3.1981년도에 입사한 사원 검색

    --문제4.업무가 SALESMAN이거나 MANAGER인 사원 중 급여가 1500 이상인 사원 검색

    --문제5.부서코드 10인 사원중 급여가 1000~3000인 사원 검색

    --문제6.사원이름이 C부터 S로 시작되는 사원 검색

    --문제7.부서코드가 30인 사원 중 성과급이 NULL이 아닌 사원 검색

    --문제8.모든 사원을 업무로 오름차순 정렬하고 같은 업무의 사원은 급여로 내림차순 정렬하여 검색

    --문제9.업무가 SALESMAN인 사원을 급여로 내림차순 정렬하여 검색

     

     

     

    <풀이>


    -- 정답 1.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE ENAME='SCOTT';
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE ENAME LIKE 'SCOTT';
    --USER : 현재 접속 사용자의 이름(사용자 스키마)을 표현하기 위한 키워드
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE ENAME=USER;

    -- 정답 2.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE SAL<=1500;

    -- 정답 3.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE HIREDATE>='81/01/01' AND HIREDATE<='81/12/31';
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE HIREDATE>='1981-01-01' AND HIREDATE<='1981-12-31';
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE HIREDATE BETWEEN '81/01/01' AND '81/12/31';
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE HIREDATE LIKE '81%';
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE HIREDATE LIKE '81/__/__';

    -- 정답 4.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE (JOB='SALESMAN' OR JOB='MANAGER') AND SAL>=1500;
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE JOB IN('SALESMAN','MANAGER') AND SAL>=1500;

    -- 정답 5.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE DEPTNO=10 AND SAL>=1000 AND SAL<=3000;
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE DEPTNO=10 AND SAL BETWEEN 1000 AND 3000;

    -- 정답 6.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE ENAME>='C' AND ENAME<'T';
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE ENAME BETWEEN 'C' AND 'T' AND ENAME<>'T';

    -- 정답 7.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE DEPTNO=30 AND COMM IS NOT NULL;

    -- 정답 8.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP ORDER BY JOB ASC,SAL DESC;
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP ORDER BY JOB,SAL DESC;

    -- 정답 9.
    SELECT EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO FROM EMP WHERE JOB='SALESMAN' ORDER BY SAL DESC;

    댓글

coding wanee