카테고리 없음

SQL_쿼리 문 및 실행 순서

멍주다배 2025. 1. 24.

SQL(Structured Query Language)

데이터베이스에서 데이터를 저장, 수정, 삭제, 조회하는 데 사용하는 언어입니다.

 

쿼리 종류

데이터 정의어 

DDL (Data Definition Language): 데이터베이스 구조를 정의

  • CREATE : 데이터베이스, 테이블, 인덱스 등을 생성
  • ALTER : 테이블 구조 변경 (컬럼 추가/삭제, 데이터 타입 변경 등)
  • DROP : 데이터베이스, 테이블, 인덱스 삭제
  • TRUNCATE : 테이블의 모든 데이터를 삭제(롤백 불가)

데이터 조작어

DML (Data Manipulation Language)

  • INSERT : 데이터 삽입
  • UPDATE : 데이터 수정
  • DELETE : 데이터 삭제

데이터 질의어

DQL (Data Query Language)

  • SELECT : 데이터 조회

데이터 제어어

DCL (Data Control Language): 데이터베이스의 접근 권한을 제어

  • GRANT : 사용자에게 특정 권한 부여
  • REVOKE : 사용자 권한 회수

트랜잭션 제어어

TCL (Transaction Control Language): 트랜잭션을 관리하는 명령어입니다.

  • COMMIT : 변경 내용을 저장
  • ROLLBACK : 변경 내용을 취소
  • SAVEPOINT : 트랜잭션 내에서 특정 시점 저장

 

순서

SQL 작성 순서

SELECT 컬럼명
FROM 테이블명
WHERE 조건
GROUP BY 컬럼명
HAVING 조건
ORDER BY 컬럼명;

 

SQL 실행 순서

FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY

FROM: 조회할 테이블 결정
WHERE: 조건을 만족하는 데이터 필터링
GROUP BY: 특정 컬럼을 기준으로 그룹화
HAVING: 그룹화된 데이터 중 조건을 만족하는 데이터 필터링
SELECT: 필요한 컬럼 선택
ORDER BY: 정렬

 

쿼리 예시

SELECT department, COUNT(*) AS employee_count, AVG(salary) AS avg_salary
FROM employees		
WHERE salary > 5000		# 급여가 5000 이상인 데이터 필터링
GROUP BY department		# department 기준으로 그룹화
HAVING AVG(salary) > 7000	# 그룹별 평균 급여가 7000 이상인 것만 필터링
ORDER BY avg_salary DESC;	# 평균 급여가 높은 순으로 정렬

# FROM -> WHERE -> GROUP BY -> HAVING -> SELECT -> ORDER BY