SQL 문법의 전체 구성 요소

분류 이름 설명
키워드 (Keyword) SQL의 예약된 명령어나 문법 단어 SELECT, FROM, WHERE, JOIN, GROUP BY, ORDER BY
절 (Clause) 키워드와 그 내용을 포함한 구문 단위 SELECT name, WHERE age > 20, ORDER BY age DESC
연산자 (Operator) 값이나 표현식을 계산·비교하는 기호 또는 단어 =, >, <, AND, OR, LIKE, IN, +, -
식 (Expression) 하나의 값으로 계산될 수 있는 조합 age + 5, salary * 0.1, LOWER(name)
리터럴 (Literal) 코드 안에 직접 쓴 고정 값 '서울', 123, NULL, '2025-10-31'
식별자 (Identifier) 테이블명, 컬럼명, 별칭 등 users, name, u.age
함수 (Function) SQL이 제공하는 계산 도구 COUNT(), AVG(), UPPER(), NOW()
서브쿼리 (Subquery) 쿼리 안의 또 다른 쿼리 SELECT * FROM users WHERE id IN (SELECT user_id FROM orders)
제약조건 (Constraint) 테이블 설계 시 데이터 무결성을 유지 PRIMARY KEY, FOREIGN KEY, NOT NULL, UNIQUE
문장 (Statement) SQL의 완전한 명령 한 줄 SELECT ...;, INSERT ...;, UPDATE ...;, DELETE ...;

SQL 문법의 계층 구조

SQL 문장 (Statement)
 ┣━ 절 (Clause)
 ┃   ┣━ 키워드 (Keyword)
 ┃   ┣━ 식 (Expression)
 ┃   ┣━ 연산자 (Operator)
 ┃   ┗━ 리터럴 / 식별자
 ┣━ 함수 (Function)
 ┗━ 서브쿼리 (Subquery)

절 (Clause)

키워드로 시작하는 문장의 한 부분(구문)

SELECT name, age      -- SELECT 절
FROM users            -- FROM 절
WHERE age > 20;       -- WHERE 절

💡 절(Clause) = 키워드 + 그에 속한 구문(내용) 즉, 의미 단위 블록

키워드 (Keyword)

SQL이 예약해둔 명령어나 문법 단어

SELECT name FROM users WHERE age > 20;

💡 SQL 문장의 뼈대를 이루는 “명령어 단어”