본문 바로가기

Oracle SQL7

[ Oracle ] 프로시저와 sql*plus 예제 (프로시저 호출하는 방법) 아래 sql 예제들은 oracle에서 기본 제공하는 scott 스키마를 이용했다. 프로시저 호출 프로시저는 select 문에서 호출할 수 없고, 다른 모듈에서 호출해 사용한다. p_midsal 이라는 프로시저를 다른 모듈에서 호출하려면, 아래와 같이 쓰면 된다. > begin p_midsal(3); end; / 또는 sql*plus 명령을 아래와 같이 써서 호출할 수도 있다. > exec p_midsal(2); 우선 emp 와 동일한 내용을 가진 testemp 테이블을 만들고 컬럼을 추가하겠다. 프로시저 예제 -- CTAS 기법으로 testemp 테이블을 만들고 컬럼 두개를 추가하시오. -- (grade number(), sumsal number(10)) create table testemp as sel.. 2021. 5. 10.
[ Oracle ] 오라클 서브쿼리 예제 아래 예제는 오라클에서 기본제공하는 hr 스키마를 이용했습니다. --ex 2-1) 부서별로 사원의 수가 5명 이상인 부서의 -- 부서번호와 부서명 -- , 부서장사번, first_name을 인원수순으로 출력하라. select d.department_id, d.department_name, d.manager_id, (select first_name from employees where d.manager_id = employee_id ), count(*) from departments d join employees e on d.department_id = e.department_id group by d.department_id, d.department_name, d.manager_id having count.. 2021. 4. 12.
[ Oracle ] 서브쿼리(SubQuery) | 서브쿼리 예제 Oracle SubQuery 특징 () 안에 작성한다. 외부쿼리(=메인쿼리)와 비교할 때 알맞은 연산자를 사용한다. (단일행/복수행, 단일 컬럼/복수 컬럼) 연관성이 있는 쿼리(correlated subquery) 또는 없는 쿼리 group by, order by 절을 제외하고 모든 절에 사용 가능하다. 복수행이 리턴될 때 all : 서브 쿼리 리턴 값 중 최대값 Scott 스키마를 활용한 Subquery 활용 문제 : 부서명이 'SALES' 인 사원의 사번과 이름은? select e.. 2021. 4. 5.
[ Oracle ] oracle 에서 기본으로 제공해주는 HR 스키마를 가지고 활용해보자! 오라클에서 기본으로 제공해주는 hr 스키마는 위 그림과 같은 구조를 가진다. 이제 이 스키마를 가지고 여러 문제들을 해결하면서 sql 을 공부해보자! -- 1-1. 사원의 first_name이 기억나지 않는다. 그 last_name에 'smith'라는 단어가 들어가는데 대문자, -- 소문자도 모른다. 그 사원의 사번(employee_id), first_name, last_name을 출력하라. select employee_id, last_name,first_name from EMPLOYEES where lower(last_name) like '%smith%'; --1-2. 고용일자(hire_date)가 오늘일자와 같은 달이고 고용일자의 요일이 월요일이나 --금요일인 사원에 대한 사번(employee_id).. 2021. 3. 29.