공부한것들을 정리하는 블로그 입니다.
1.WHERE조건절연습 본문
반응형
-- system 계정으로 접속 후 skstudy라는 계정을 생성해준다 create user skstudy identified by skstudy default tablespace users temporary tablespace temp; -- skstudy계정에 권한을 부여 grant connect,resource to skstudy;
-- system 계정으로 접속 후 skstudy라는 계정을 생성해준다 --문제1 ) EMP 테이블에서 JOB이 Manager,Clerk,Analyst가 아닌 사원의 사원번호, 성명, 담당업무, 급여, 부서번호를 출력하여라 select 사원번호, 성명, 담당업무, 급여, 부서번호 from emp where job not in ('Manager','Clerk','Analyst'); --문제 2) emp 테이블에서 이름, 급여, 보너스, 연봉을 출력하시오(heading을 연봉으로 출력하세요). select 이름, 급여, 보너스, nvl(급여 *12 +보너스, 급여 *12) 연봉 from emp; /* NVL 함수는 NULL값을 다른 값으로 바꿀 때 쓰입니다. 모든 데이터 타입에 적용 가능합니다. 전환되는 값의 데이터 타입을 일치시켜야 합니다. 괄호() 안의 좌측 값이 null일 경우, 우측 값으로 바꾸어서 출력합니다 nvl(급여 *12 +보너스, sal*12)과 ((급여 *12) +nvl(보너스,0))은 동일 */ --문제 3) EMP 테이블에서 이름과 연봉을 "KING : 1 Year salary = 60000" 형식으로 출력하시오( ||' '|| : 사용방법). select 이름 ||' : 1 Year salary = '|| ((급여 *12) +nvl(보너스,0)) "이름 및 연봉" from emp; /* 컬럼은 하나만 생성됨("이름 및 연봉") */ --문제 4) EMP테이블에서 가장 최근에 입사한 순으로 사원번호, 이름, 업무, 급여, 입사일자, 부서번호를 출력하라(ORDER BY : 정렬 출력 + DESC; 내림차순 정렬). select 사원번호, 이름, 업무, 급여, 입사일자, 부서번호 from emp order by 가입일 desc; --문제 5) EMP 테이블에서 SMITH 사원의 모든 정보를 조회하시오(조건식 : WHERE 절 사용방법). select * from emp where 사원 = 'smith'; --문제 6) EMP 테이블에서 급여가 3000이상인 사원의 사원번호, 이름, 담당업무, 급여를 출력하라(조건식 : WHERE 절 사용방법). select 사원번호, 이름, 담당업무, 급여 from emp where 급여 >= 3000; --문제 7) EMP 테이블에서 1982년 1월 1일 이후에 입사한 사원의 사원번호, 성명, 담당업무, 급여, 입사일자, 부서번호를 출력하라(조건식 : WHERE 절 사용방법). select 사원번호, 성명, 담당업무, 급여, 입사일자, 부서번호 from emp where to_char(입사일,'yyyy-mm-dd') >= '1982-01-01'; --문제 8) EMP 테이블에서 급여가 1300에서 1500사이의 사원의 성명, 담당업무, 급여, 부서번호를 출력하라. select 성명, 담당업무, 급여, 부서번호 from emp where 급여 between 1300 and 1500; --문제 9) EMP 테이블에서 사원번호가 7902, 7788, 7566 인 사원의 사원번호, 성명, 담당업무, 급여, 입사일자를 출력하여라. select 사원번호, 성명, 담당업무, 급여, 입사일자 from emp where 사원번호 in ('7902', '7788', '7566'); /* where 사원번호 in (7902, 7788, 7566); 로 써도 차이 없음 */ --문제 10) EMP 테이블에서 입사일자가 1982년도에 입사한 사원의 사번, 성명, 담당업무, 급여, 입사일자, 부서번호를 출력하여라. select 사번, 성명, 담당업무, 급여, 입사일자, 부서번호 from emp where to_char(입사일자,'yyyy') = '1982'; /* WHERE 입사일자 LIKE '%82%'; */ /* WHERE to_char(입사일자,'yyyy-mm-dd') between '1982-01-01' and '1982-12-31'; */ --문제 11) EMP 테이블에서 보너스가 NULL인 사원의 사원번호, 성명, 담당업무, 급여, 입사일자, 부서번호를 출력하여라. select 사원번호, 성명, 담당업무, 급여, 입사일자, 부서번호 from emp where 보녀스 is null; /* is null */ --문제 12). EMP 테이블에서 급여가 1100이상이고 JOB이 Manager인 사원의 사원번호, 성명, 담당업무, 급여, 입사일자, 부서번호를 출력하여라. select 사원번호, 성명, 담당업무, 급여, 입사일자, 부서번호 from emp where 급여 >= 1100 and job = 'manager'; --문제 13) EMP 테이블에서 급여가 1500이상이고, 부서번호가 10 또는30인 사원의 이름과 급여를 출력하는 SELECT 문장을 작성하여라. 단 HEADING을 Employee과 Monthly Salary로 출력하여라. select 이름 as "Employee" 급여 as "Monthly Salary" from emp where 급여 >= 1500 and (부서번호 = 10 or 부서번호 = 30) /* and 부서번호 in (10, 30) */ /* as "a 띄어쓰기 b" 띄어쓰기 있을때는 " " 사용해야함 */
반응형
'SK고용디딤돌 > DB' 카테고리의 다른 글
2.functions연습-script (0) | 2017.07.13 |
---|---|
2.functions연습 (0) | 2017.07.13 |
1.WHERE조건절연습 - script (0) | 2017.07.13 |
Comments