본문 바로가기
Programming/Database

데이터베이스5

by 공부합시다홍아 2020. 6. 2.

1. LISTAGG 함수
   : 그룹에 속해 있는 데이터를 가로로 나열 할 때 사용
   - LISTAGG([나열할 열], [각 데이터를 구분하는 구분자])
     WITHIN GROUP(ORDER BY 나열할 열 기준 열 )

2. UNPIVOT 함수
   : PIVOT 함수와 반대의 기능

3. 조인
    : 두 개 이상의 테이블을 연결하여 하나의 테이블처럼 출려할 때 사용하는 방식
    > 간단히 말하자면, 집합 연산자를 사용한 결과는 두 개 이상 SELECT문의 결과 값을 세로로 연결한 것
    > 조인을 사용한 결과는 두 개 이상의 테이블 데이터를 가로로 연결한 것
    - 여러 테이블을 사용할 때의 FROM 절
      : 여러 개 테이블을 지정하는 것이 가능, 꼭 테이블이 아니더라도 테이블 형태, 즉 열과 행으로 구성된 데이터                  집합이면 모두 FROM절에 지정가능하다. [ 뷰, 서브쿼리 등이 이에 해당 ]

4. 조인의 종류
   ㄱ. 등가조인 [ Equi join ]
        : 테이블을 연결한 후에 출력 행을 각 테이블의 특정 열에 일치한 데이터를 기준으로 선정
        : 등가 조인은 내부 조인 또는 단순 조인이라고 부르기도 한다.
        : 등가 조인은 일반적으로 가장 많이 사용하는 조인 방식
        : 외부 조인과 같이 이름을 특별히 명시하지 않으면, 조인을 사용한다는 것은 대부분 등가 조인,
        : 즉, 특정 열 값이 일치한 출력 결과를 사용하는 방식

 ㄴ. 비등가조인 [ Non-equi join ]
        : 등가 조인 외의 방식 의미
        : 조인 방식에 비해 그리 자주 사용하는 방식은 아니지만 조인 조건이 특정 열의 일치 열부를 검사하는 방식 외
          에 다른 방식도 사용할 수 있다.

ㄷ. 자체조인 [ Self Join ]

5. NATURAL 조인 
   : 등가 조인을 대신해 사용 할 수 있는 조인 방식으로 조인 대상이 되는 두 테이블에 이름과 자료형이 같은 열을 찾은
     후 그 열을 기준으로 등가 조인을 해주는 방식

6. 외부조인

: 두 테이블 간 조인 수행에서 조인 기준 열의 어느 한 쪽이 NULL 이어도 강제로 출력하는 방식

7. JOIN ~ USING 
   : ISO/ANSI에서 관계형 데이터베이스 표준 언어에서 SQL-99방식
   : 현재는 잘 사용하진 않지만, 알아둬서 나쁠 것 없다고 생각합니다.
   : 조인을 대신해 사용할 수 있는 조인 방식으로 조인 대상이 되는 두 테이블에 이름과 자료형이 같은 열을 찾은 후           그 열을 기준으로 등가 조인을 해주는 방식

8. JOIN ~ ON
   : 조인 방식에서는 기존 WHERE절에 있는 조인 조건식을 ON키워는 옆에 작성
   : 조인 기준 조건식은 ON에 명시하고 그 밖의 출력행을 걸러 내기 위해 WHERE 조건식을 따로 사용하는 방식

9. 왼쪽 외부 조인을 SQL-99로 나타내기

10. 오른쪽 외부 조인을 SQL-99로 나타내기

11. 전체 외부조인을 SQL-99로 나타내기

9. 서브쿼리 [ Subquery ]
   : SQL문을 실행하는 데 필요한 데이터를 추가로 조회하기 위해 SQL문 내부에서 사용하는 SELECT문 의미
   : 서브쿼리의 결과 값을 사용하여 기능을 수행하는 영역은 메인쿼리라고 부릅니다.

    - 서브 쿼리의 특징

       ㄱ. 서브 쿼리는 연산자와 같은 비교 또는 조회 대상의 오른쪽에 놓이며 괄호()로 묶어서 사용

        ㄴ. 특수한 몇몇 경우를 제외한 대부분의 서브쿼리에서는 ORDER BY절을 사용할 수 없습니다.

        ㄷ. 서브쿼리의 SELECT 절에 명시한 열은 메인쿼리의 비교 대상과 같은 자료형과 같은 개수로 지정해야합니다. 즉               메인쿼리의 비교대상 데이터가 하나라면 서브쿼리의 SELECT 절 역시 같은 자료형인 열을 하나 지정해야합니               다.

        ㄹ. 서브쿼리에 있는 SELECT문의 결과 행 수는 함께 사용하는 메인쿼리의 연산자 종류와 호환 가능해야 한다.

- 단일형 서브쿼리

- 서브 쿼리 IN연산자

- 서브쿼리 SOME, ANY 연산자

-서브쿼리 ALL 연산자

-서브쿼리 EXISTS 연산자

- 서브 쿼리 EXISTS : FALSE 시

728x90

'Programming > Database' 카테고리의 다른 글

데이터베이스 6  (0) 2020.06.03
데이터베이스 : 중간 연습  (0) 2020.06.02
데이터베이스4  (0) 2020.06.01
데이터베이스3  (0) 2020.05.29
데이터베이스2  (0) 2020.05.28