SQL 실습 Part Ⅱ
문양세
(1
stversion: 문성우 )
(revised by 손시운 )
더 복잡한 SQL 검색 질의
SQL 에서 뷰 ( 가상 테이블 )
2
널 값을 포함한 비교
질의 18
• 상사가 없는 모든 종업원들의 이름을 검색
3
중첩 (nested query) 와 집합비교 (1/4)
질의 4A
• 성이 ‘ Smith’ 인 종업원 ( 일반 직원 혹은 프로젝트를 담당하는 부서의 관리자 ) 이 참여하는 프로젝트의 프로젝트 번호 목록을 작성
4
중첩 (nested query) 와 집합비교 (2/4)
질의
• SSN 이 123456789 인 사원이 일하는 프로젝트와 일한 시간의 조합이 동일한 사원의 SSN 을 검색
5
중첩 (nested query) 와 집합비교 (3/4)
질의 16
• 자신의 부양가족과 이름 , 성별이 같은 종업원들의 이름을 검색
6
중첩 (nested query) 와 집합비교 (4/4)
레코드 추가 후 다시 검색
7
상관 중첩질의
질의 16A ( 조건에 맞는 레코드 필요 )
• 자신의 부양가족과 이름 , 성별이 같은 종업원들의 이름을 검색
8
EXISTS 함수
질의 6
• 부양가족이 없는 종업원들의 이름을 검색
9
명시적 집합과 애트리뷰트 재명명 (1/2)
질의 17
• 프로젝트 번호 1,2,3 에서 일하는 모든 종업원들의 SSN 을 검색
10
명시적 집합과 애트리뷰트 재명명 (2/2)
질의 8A
• 종업원에 대해 , 종업원의 성과 직속 감독자의 성을 검색
11
SQL 에서 조인된 테이블
질의 1A
• ‘Research’ 부서에서 일하는 모든 종업원들의 이름과 주소를 검색
12
집단 함수 (Aggregate Function) (1/3)
질의 19
• 종업원의 급여의 합 , 최고 급여 , 최저 급여 , 평균 급여를 계산 후 검색
13
집단 함수 (Aggregate Function) (2/3)
질의 21
• 회사내의 총 종업원의 수를 검색
14
집단 함수 (Aggregate Function) (3/3)
질의 5
• 둘 이상의 부양가족이 있는 모든 사원의 이름을 검색
15
Group by & Having (1/3)
질의 24
• 각 부서에 대해서 , 부서 번호 , 부서 내에 있는 종업원의 수 , 평균 봉급은 ?
16
Group by & Having (2/3)
질의 25
• 각 프로젝트에 대해서 프로젝트 번호 , 프로젝트 이름 , 그 프로젝트에서 근무하는 사원들의 수를 검색
17
Group by & Having (3/3)
질의 26
• 세 명 이상의 사원이 근무하는 각 프로젝트에 대해서 프로젝트 번호 , 프로젝트 이름 , 프로젝트에서 근무하는 사원의 수를 검색
18
더 복잡한 SQL 검색 질의
SQL 에서 뷰 ( 가상 테이블 )
19
SQL 에서 VIEW 의 명시 (1/2)
VIEW 사용 예제 (V1)
• 다른 WORKS_ON 테이블의 명시
20
SQL 에서 VIEW 의 명시 (2/2)
VIEW 사용 예제 (V2)
• 부서 통계 정보
21
VIEW 를 이용한 질의 (1/2)
VIEW 질의 1
• 새롭게 생성된 가상 테이블 ( 뷰 ) 에 대해 SQL 질의를 사용할 수 있음
22
VIEW 를 이용한 질의 (2/2)
VIEW 질의 2
• DEPT_INFO 에서 2 명 이상의 인원을 갖는 부서의 이름과 10% 올린 연봉을 검색
23
VIEW 의 삭제
DROP 을 사용하여 더 이상 필요하지 않은 뷰를 제거
24