SQLD 4장 ] 요약 & 연습문제
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 상호연관 서브쿼리는 처리 속도가 가장 빠르기 때문에 최대한 활용하는 것이 좋다.
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
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 함수는 고유한 순위를 부여 한다.
( 같은 등수가 존재할 수 없음 )
1 RANK 함수는 동일한 값에 대해서는 동일한 순위를 부여한다.
( 같은 등수에 여럿이 존재하는 경우 등수가 SKIP 될 수 있음)
2 DENSE_RANK 함수는 RANK 함수와 흡사하나, 동일한 순위를 하나의 건수로 취합하는 것이 틀린점이다.
( 같은 등수에 여럿이존재하는 경우에도 등수가 SKIP 되지 않음 )
3 CUMM_RANK 함수는 누적된 순위를 부여할 수 있다.
( 등수를 누적 순위로 표현함 )
4 RANK 함수가 동일한 값에 대해서는 동일한 순위를 부여하는데 반해, ROW_NUMBER 함수는 고유한 순위를 부여 한다.
( 같은 등수가 존재할 수 없음 )
9. 다음 중 맞는 내용은 무엇인가 ?
1 유저를 생성하면 생성한 유저로 바로 로그인 할 수 있다.
2 새롭게 생성된 유저라면 조건 없이 새로운 유저를 만들 수 있다.
3 유저 생성은 누구나 할 수 있지만 권한 설정은 데이터베이스 관리자만 가능하다.
4 다른 유저의 테이블은 그 테이블에 대한 권한 없이는 조회할 수 없다.
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
글이 도움이 되셨다면 공감과 광고 클릭 한번 부탁드립니다! 💕
감사합니다 ✨
댓글
이 글 공유하기
다른 글
-
SQLD 5장 ] 요약 & 연습문제
SQLD 5장 ] 요약 & 연습문제
2016.03.041절 : 옵티마이저와 실행계획사용자의 질의를 최적의 실행 방법으로 결정하게 하는 것이 바로 옵티마이저의 역할이다옵티마이저는 규칙기반 옵티마이저와 비용기반 옵티마이저로 나눌 수 있다.규칙기반 옵티마이저 - 우선규칙에 따라 실행계획 생성비용기반 옵티마이저 - 필요한 최소비용 계산해서 실행계획 생성비용기반 옵티마이저의 구성요소1.질의변환기 2.대안계획 생성기 3.비용예측기 4.딕셔너리실행계획 정보의 구성요소1.조인순서 2.조인기법 3.액세스기법 4.최적화정보 5.연산 2절 : 인덱스 기본인덱스의 목적은 검색 성능의 최적화이지만, DML 작업에 대해서는 인덱스도 같이 따라서 움직이기 때문에성능이 떨어진다. B-TREE 인덱스는 일치 검색, 범위 검색 에 모두 적합한 구조이다.테이블에 액세스하는 방법에는 인덱… -
SQLD 3장 ] 요약 & 연습문제
SQLD 3장 ] 요약 & 연습문제
2016.03.031절 : 관계형 데이터베이스 개요데이터들의 집합에서 필요로 하는 데이터를 꺼내서 조회하고… 입력/수정/삭제 하는 행위를 통해사용자는 데이터베이스와 대화하게 된다(?!). SQL (Structured Query Language) 은 이러한 대화를 가능하도록매개 역할을 한다. SQL 은 관계형 데이터베이스의 데이터 정의, 조작, 제어 를 위해 사용하는 언어이다 2절 : DDL테이블은 CREATE TABLE 생성, ALTER TABLE 수정, DROP TABLE 삭제, RENAME TABLE 재명명. 3절 : DMLINSERT INTO 입력, UPDATE 수정, DELETE 삭제, SELECT 조회 4절 : 대량 데이터에 따른 성능트랜잭션은 ALL or NOTHING. COMMIT 트랜잭션 완료,… -
SQLD 2장 ] 요약 & 연습문제
SQLD 2장 ] 요약 & 연습문제
2016.03.021절 : 성능 데이터 모델링의 개요성능 데이터 모델링이란 데이터베이스 성능향상을 목적 으로 설계단계의 데이터 모델링 때부터정규화, 반정규화, 테이블통합, 테이블분할, 조인 구조, PK, FK 등의 여러가지 성능 과 관련된 사항 가지고데이터 모델링에 반영될 수 있도록 하는 것으로 정의된다. 2절 : 정규화와 성능설계를 할 때 정규화를 하는것은 기본적으로 데이터에 대한 중복성을 제거하여 주고, 데이터가 관심사별로처리가 되는 경우가 많기 때문에 성능이 향상되는 특징을 가지고 있다. 설계단계에서 무조건 반정규화는 안되며 기본적으로 정규화된 데이터 모델을 생성하도록 노력해야 한다. 3절 : 반정규화와 성능데이터 무결성이 깨질 수 있는 위험을 무릅쓰고 데이터를 중복하여 반정규화를 적용하는 이유는…데이터를 조회… -
SQLD 1장 ] 요약 & 연습문제
SQLD 1장 ] 요약 & 연습문제
2016.03.021절 : 데이터 모델의 이해일반적으로 모델링이라고 하는 개념은 일정한 표기법에 의해 자연의 현상, 업무적인 현상 등을 형상화 하는 것.데이터모델링은 데이터베이스 구축을 위한 분석과 설계의 핵심도구 이다.데이터모델링에서 가장 중요한 핵심개념은 엔터티, 속성, 관계 이다. 2절 : 엔터티데이터베이스를 구축할때 분석/설계 하는 관점에서 엔터티는"업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적, 영속적 으로 존재하는 단위" 로 정의된다.엔터티를 정의할 때 중요한 특징(속성의 존재, 2개 이상의 인스턴스 등)이 있다.엔터티를 분류할때는 기본엔터티, 중심엔터티, 행위엔터티 로 구분한다. 3절 : 속성속성이란 "업무에서 필요로 하는 엔터티에서 관리하고자 하는 최소의 데이터 단위" 라고 정의된다. 이…
댓글을 사용할 수 없습니다.