BOARD / SQL / LANDING
SQL 문법 게시판
SQLD 실습에서 자주 만나는 문법을 주제별 랜딩 글로 정리했습니다.
번호분류제목핵심 토픽업데이트
01SQL 기본SQL 기본 정리기본 문법은 각각 따로 외우는 것이 아니라 실행 순서와 역할을 함께 묶어서 기억해야 실습에서 헷갈리지 않습니다. 특히 GROUP BY, HAVING, DISTINCT는 결과를 어떻게 바꾸는지 직접 실행하면서 체감하는 것이 중요합니다.11개2026-04-1302함수SQL 함수 정리단일행 함수는 한 행을 한 행으로 바꾸고, 집계 함수는 여러 행을 하나의 결과로 요약합니다. 이 차이를 구분하지 않으면 GROUP BY 규칙과 함께 오류가 자주 발생합니다.8개2026-04-1303JOINSQL JOIN 정리JOIN은 결국 어떤 행과 어떤 행을 연결할지를 정하는 작업입니다. 연결 기준을 ON에 분명히 적고, 조인 종류에 따라 빠지는 행과 남는 행이 어떻게 달라지는지 직접 결과로 확인해야 합니다.6개2026-04-1304서브쿼리SQL 서브쿼리 정리단일행인지 다중행인지, 메인 쿼리와 연동되는 상관 서브쿼리인지, SELECT에 들어가는 스칼라 서브쿼리인지를 먼저 구분하면 대부분의 오류를 줄일 수 있습니다.6개2026-04-1305집합 연산자SQL 집합 연산자 정리UNION 계열은 두 SELECT가 같은 구조를 가져야 합니다. 컬럼 개수와 순서, 타입 호환성을 먼저 맞추고 나서 중복 제거 여부를 결정하면 됩니다.4개2026-04-1306윈도우 함수SQL 윈도우 함수 정리분석 함수는 `OVER` 절로 계산 범위를 지정합니다. PARTITION BY로 묶고, ORDER BY로 순서를 정한 뒤, 각 함수가 어떤 방식으로 값을 계산하는지 보는 구조로 접근하면 훨씬 쉬워집니다.8개2026-04-1307GROUP BY 확장GROUP BY 확장 정리ROLLUP은 계층형 소계, CUBE는 모든 조합, GROUPING SETS는 원하는 조합만 선택하는 방식으로 이해하면 정리가 쉽습니다. GROUPING 함수는 어떤 행이 소계/총계인지 판별할 때 함께 사용합니다.4개2026-04-1308계층형 질의계층형 질의 정리START WITH로 시작 지점을 정하고, CONNECT BY로 부모와 자식 연결 규칙을 정하며, PRIOR로 어느 쪽이 부모 기준인지 표시한다고 생각하면 대부분 풀립니다.5개2026-04-1309DMLSQL DML 정리DML은 테이블 구조를 바꾸지 않고 데이터 자체를 조작합니다. 실행 뒤 COMMIT 여부에 따라 결과가 확정될 수 있다는 점도 TCL과 함께 같이 기억해야 합니다.4개2026-04-1310TCLSQL TCL 정리트랜잭션은 하나의 작업 단위입니다. COMMIT은 확정, ROLLBACK은 되돌림, SAVEPOINT는 중간 복귀 지점을 잡는다고 생각하면 흐름이 잡힙니다.3개2026-04-1311DDLSQL DDL 정리DML이 행 데이터를 다룬다면 DDL은 테이블과 객체의 틀을 다룹니다. 구조를 바꾸는 명령이므로 영향 범위를 넓게 봐야 하고, 트랜잭션 개념도 DML과 다르게 이해해야 합니다.5개2026-04-1312제약조건SQL 제약조건 정리제약조건은 단순 암기보다 역할을 연결해서 이해하는 것이 중요합니다. 식별, 참조 무결성, 필수 입력, 도메인 제한 같은 관점으로 나누면 정리가 빨라집니다.5개2026-04-1313뷰 / 인덱스 / 시퀀스뷰, 인덱스, 시퀀스 정리뷰는 저장된 SELECT, 인덱스는 빠른 탐색을 위한 구조, 시퀀스는 일련번호 발급 장치라고 생각하면 전체 윤곽이 잡힙니다.3개2026-04-1314기타 핵심SQL 핵심 개념 정리이 글은 개별 문법보다 한 단계 위의 관점을 정리합니다. 실습 중 자주 나오는 오류와 직결되는 개념들이라 한 번 정리해두면 거의 모든 쿼리 이해에 도움이 됩니다.5개2026-04-13