TIL

[SQL] Pivot Table과 윈도우 함수 그리고 값이 없을 때 대처법

oceanflow 2024. 12. 25. 23:29

1. Pivot Table

 1) 보기 쉽게 배열하여 조회하기

    피벗 테이블은 대량의 데이터를 요약하고 분석할 수 있게 해주는 도구이다.

    쉽게 말해 데이터를 다양한 방식으로 재배열하여서 새로운 관점의 표를 만들어 준다고 할 수 있다.

 

 

 

2. 윈도우 함수 (Window Function)

    윈도우 함수는 SQL에서 행과 행 간의 관계를 쉽게 정의하고 계산할 수 있게 해주는 기능이다.

 

 1) RANK

    RANK는 순위를 매겨주는 기능이다.

    기본 구조는 다음과 같다.

SELECT 
    컬럼1, 
    컬럼2,
    RANK() OVER (
        [PARTITION BY 그룹 기준 컬럼]
        ORDER BY 순위 기준 컬럼 [ASC|DESC]
    ) 랭크 함수 별칭
FROM 테이블명

 

 2) SUM

    SUM은 합계를 구하는 기능이며 누적합을 구하거나 카테고리별 합계 컬럼과 원본 컬럼을 함께 이용할 때 유용하게

    사용할 수 있다.

    누적합을 구할때 기본 구조는 다음과 같다.

SELECT 
    컬럼1,
    컬럼2,
    SUM(누적합을 계산할 컬럼) OVER (
        [PARTITION BY 그룹 기준 컬럼]
        ORDER BY 순서 기준 컬럼
    ) SUM 함수 별칭
FROM 테이블명

 

 

 

3. 값이 없을 때

    데이터를 조회했는데 아무 값이 없다면 없는 값을 제외해 주거나 다른 값을 사용해 줄 수 있다.

 

 1) 없는 값을 제외해주기

    없는 값을 'Not given'으로 쓰고 값을 NULL로 처리하면 된다.

 

 2) 다른 값을 대신 사용하기

    COALESCE를 사용하여 대체 값을 주면 된다.

 

 

 

4. 조회한 데이터가 상식적이지 않은 값일 때

    운전면허를 가지고 있는 사람의 데이터를 뽑았는데 미성년자가 나오거나 그 외에 납득하기 어려운 값이 나온다면

    조건문을 사용하여 범위를 준 뒤 그 범위를 벗어나는 값에 대체값을 줄 수 있다.