STUDY_SEONMIN
SELF JOIN 본문
SELF JOIN
셀프 조인은 이름 그대로 테이블 자기 자신과 조인하는 것을 의미합니다. 같은 테이블끼리 조인하는 것이므로 Alias설정을 잘 해주어야 컬럼 사용 시 혼동이 없습니다.
SELF JOIN 예시
위와 같은 일자별매출 테이블이 있을 때, 일자별 누적 매출액을 확인하고 싶을 때 SELF JOIN을 사용할 수 있습니다.
일자별 누적 매출액을 확인하기 위해서는 2015.11.10의 데이터는 2015.11.01~2015.11.10까지의 데이터와 매칭이 되어서 매출액의 합계를 구해주어야 합니다.
우선 데이터를 매칭시키는 작업부터 해보겠습니다.
SELECT A.*, B.*
FROM 일자별매출 AS A
JOIN 일자별매출 AS B
ON A.일자 >= B.일자
ORDER BY A.일자, B.일자;
SQL문을 실행시키면 이렇게 11.01데이터는 11.01데이터와, 11.02데이터는 11.01, 11.02 데이터와 매칭이되는 것을 확인할 수 있습니다.
그럼 여기서는 A.일자로 그룹핑을 함과 동시에 매출액의 합계를 구해주기만 하면 일자별 누적매출액을 구할 수 있는 것입니다.
SELECT A.일자, SUM(B.매출액) AS 누적매출액
FROM 일자별매출 AS A
JOIN 일자별매출 AS B
ON A.일자 >= B.일자
GROUP BY A.일자;
'STUDY > SQL' 카테고리의 다른 글
SQLD 시험 후기 (0) | 2021.06.25 |
---|---|
SELECT FROM tables (0) | 2021.04.19 |
집계함수의 사용 (0) | 2021.04.16 |
NULL값의 연산 (0) | 2021.04.15 |
JOIN(INNER, OUTER) (0) | 2021.04.13 |
Comments