SQLD, D-12 오답노트

야아니·2025년 11월 4일

SQLD

목록 보기
5/11
post-thumbnail

🧩 PARTITION, PRECEDING, FOLLOWING

SELECT SUM(SAL) OVER (
PARTITION BY MGR
ORDER BY HIREDATE -- DEFAULT ASC
ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING
) AS MGR_SUM FROM Mytest;

  • PARTITION BY MGR
    MGR(관리자) 별로 데이터를 그룹(파티션) 으로 나눕니다.
    즉, 같은 MGR을 가진 직원들끼리만 윈도우 함수가 작동합니다.
  • ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING
    현재 행을 기준으로 이전 1행 + 현재 행 + 다음 1행을 윈도우(창)으로 설정합니다.
    이 범위 내의 값을 이용해서 합계나 평균 등을 계산합니다.

🧩 JOIN(INNER, OUTER, CROSS, SELF)

  • JOIN관련 문제에 취약점을 보이므로 오늘 확실히 짚고 넘어가기
    자세한 내용은 NOTION, 책보며 학습

📘 SQL JOIN 종류 요약표

JOIN 종류키워드반환되는 행설명
INNER JOININNER JOIN양쪽 테이블에 공통된 값이 있는 행만가장 기본적인 조인. 교집합처럼 동작
LEFT OUTER JOINLEFT JOIN왼쪽 테이블의 모든 행 + 오른쪽 일치행오른쪽에 없으면 NULL로 표시
RIGHT OUTER JOINRIGHT JOIN오른쪽 테이블의 모든 행 + 왼쪽 일치행왼쪽에 없으면 NULL로 표시
FULL OUTER JOINFULL JOIN양쪽 테이블의 모든 행일치하지 않으면 NULL 채움 (Oracle은 UNION으로 대체)
CROSS JOINCROSS JOIN두 테이블의 모든 행 조합곱집합 (모든 조합을 생성)
SELF JOIN자기 자신과 조인조건에 따라 자기 자신과 연결계층 구조 표현 등에 사용
profile
세계평화를 원하는 사람입니다.

0개의 댓글