반응형

 

 

1절 : 표준 조인

ANSI/ISO 표준 SQL 에서 규정한 INNER JOIN, NATURAL JOIN, USING 조건절, ON 조건절, CROSS JOIN,
OUTER JOIN 문법을 통해 사용자는 테이블 간의 JOIN 조건을 FROM 절에서 명시적으로 정의할 수 있다.

 

 

 

2절 : 집합 연산자

두 개 이상의 테이블에서 JOIN 을 사용하지 않고 값을 건드려보겠다. 쿼리와 쿼리 사이에 집합연산자를 둔다.UNION 합집합, UNION ALL 확장된 합집합, INTERSECT 교집합, EXCEPT/MINUS 차집합

 

 

 

3절 : 계층형 질의와 셀프 조인

테이블 안에 계층형 데이터가 존재하는 경우(사원의 매니저) 데이터를 조회하기 위해서 계층형 질의를 사용한다.
셀프 조인이란 동일 테이블 사이의 조인을 말하며, FROM 절에 동일 테이블이 두 번 쓴다.

 

 

 

4절 : 서브쿼리

하나의 메인 쿼리 안에 포함되어 있는 또 하나의 쿼리.
위치나 기능에 따라 NESTED SUBQUERY, INLINE VIEW, SCALAR SUBQUERY 로 구분할 수 있다

 

 

 

5절 : 그룹 함수

데이터 분석을 위한 함수. ROLLUP 소그룹 소계 계산, CUBE 다차원적인(GROUP 항목들간) 소계 계산,
GROUPING SETS 특정 항목 소계 계산.

 

 

 

6절 : 윈도우 함수

데이터 분석을 위한 함수. 행과 행간의 관계를 쉽계 정의하기 위해 만든 함수.
RANK, DENSE_RANK, ROW_NUMBER, SUM, MAX, MIN, AVG, COUNT, FIRST_VALUE, LAST_VALUE,
LAG, LEAD, CUME_DIST, PERCENT_RANK, NTILE, RAITO_TO_REPORT

 

 

 

7절 : DCL

유저를 생성하고 권한을 제어할 수 있는 DCL 명령어가 있고
GRANT 문장을 통해 권한을 생성하고 REVOKE 문장을 통해 권한을 회수한다
중간 역할 하는 ROLE 도 있다.

 

 

 

8절 : 절차형 SQL

절차형 SQL을 이용하여 조건에 따른 처리를 할 수 있다.
절차형 SQL을 이용하여 PROCEDURE, TRIGGER, USER DEFINIED FUNCTION 을 만들 수 있다.
 

 

 

 ❏ 4장 연습문제


1. 다음 JOIN의 종류의 설명 중 틀린 것은 무엇인가?
1 EQUI JOIN 은 반드시 PK, FK 관계에 의해서만 성립된다.
2 NON-EUQI JOIN은 등가 조건이 성립되지 않은 테이블에 JOIN을 걸어주는 방법이다.
3 OUTER JOIN 은 JOIN 조건을 만족하지 않는 데이터도 볼 수 있는 방법이다.
4 SELF JOIN 은 하나의 테이블을 논리적으로 분리시켜 EQUI JOIIN 을 이용하는 방법이다.


2. 4개의 테이블로부터 필요한 칼럼을 조회하려고 한다. 최소한 몇 개의 JOIN 이 필요한가 ?
1 2개 2 3개
3 4개 4 5개


3. 다음 SET 연산자에 대한 설명 중 틀린 것을 무엇인가 ?
1 UNION 연산자는 조회 결과에 대한 합집합을 나타내며 자동으로 정렬을 해준다.
2 UNION ALL 연산자는 조회 결과를 정렬하고 중복되는 데이터를 한 번만 표현한다.
3 INTERSETC 연산자는 조회 결과에 대한 교집합을 의미한다.
4 EXCEPT 연산자는 조회 결과에 대한 차집합을 의미한다.


4. 다음 중 SELF JOIN을 수행해야 할 때는 어떤 경우인가 ?
1 두 테이블에 대한 공통 칼럼이 존재하고 두 테이블이 연관 관계가 있다.
2 두 테이블에 연관된 칼럼은 없으나 JOIN을 해야 한다.
3 한 테이블 내에서 두 컬럼이 연관 관계가 있다.
4 한 테이블 내에서 연관된 칼럼은 없으나 JOIN 을 해야 한다.


5. 일반적으로 FROM 절에 정의된 후 먼저 수행되어 SQL 문장 내에서 절차성을 주는 효과를 볼 수 있는 것은 어떤 유형의 서브쿼리 문장인가 ?
1 SCALAR SUBQUERY
2 NESTED SUBQUERY
3 CORRELATED SUBQUERY
4 INLINE VIEW

6. 다음 서브쿼리에 대한 설명 중 틀린 것을 고르시오.
1 다중행 연산자는 IN, ANY, ALL 이 있으며, 서브쿼리의 결과로 하나 이상의 데이터가 RETURN 되는 서브쿼리이다.
2 TOP-N 서브쿼리는 INLINE VIEW 의 정렬된 데이터를 ROWNUM 을 이용해 결과 형수를 제한하거나, TOP(N) 조건을 사용하는 서브쿼리이다.
3 INLINE VIEW 는 FROM 절에 사용되는 서브쿼리로서 실질적인 OBJECT는 아니지만 SQL 문장에서 마치 VIEW 나 테이블처럼 사용되는 서브쿼리이다.
4 상호연관 서브쿼리는 처리 속도가 가장 빠르기 때문에 최대한 활용하는 것이 좋다.

7. 소계, 중계, 합계처럼 계층적 분류를 포함하고 있는 데이터의 집계에 적합한 GROUP 함수 두 가지는 무엇인가 ?
1 ROLLUP, SUM
2 ROLLUP, CUBE
3 GROUPING, SUM
4 CUBE, SUM

8. 그룹 내 순위 관련 WINDOW 함수의 특징이 틀린 것은 무엇인가?
1 RANK 함수는 동일한 값에 대해서는 동일한 순위를 부여한다. 
( 같은 등수에 여럿이 존재하는 경우 등수가 SKIP 될 수 있음)
2 DENSE_RANK 함수는 RANK 함수와 흡사하나, 동일한 순위를 하나의 건수로 취합하는 것이 틀린점이다.
( 같은 등수에 여럿이존재하는 경우에도 등수가 SKIP 되지 않음 )
3 CUMM_RANK 함수는 누적된 순위를 부여할 수 있다.
( 등수를 누적 순위로 표현함 )
4 RANK 함수가 동일한 값에 대해서는 동일한 순위를 부여하는데 반해, ROW_NUMBER 함수는 고유한 순위를 부여 한다.
( 같은 등수가 존재할 수 없음 )

9. 다음 중 맞는 내용은 무엇인가 ?
1 유저를 생성하면 생성한 유저로 바로 로그인 할 수 있다.
2 새롭게 생성된 유저라면 조건 없이 새로운 유저를 만들 수 있다.
3 유저 생성은 누구나 할 수 있지만 권한 설정은 데이터베이스 관리자만 가능하다.
4 다른 유저의 테이블은 그 테이블에 대한 권한 없이는 조회할 수 없다.


10. 다음 중 절차형 SQL을 이용하여 주로 만드는 것이 아닌 것은 무엇인가?
1 PROCEDURE
2 TRIGGER
3 USER DEFINED FUNCTION
4 BUILD-IN FUNCTION

http://wiki.gurubee.net/pages/viewpage.action?pageId=27427809

반응형
도움이 되셨다면 공감 클릭 부탁드리며
출처만 남겨주시면 글 내용은 마음껏 퍼가셔도 좋습니다 :)