티스토리 뷰
SQL 쿼리문을 작성할 때 사용되는 WHERE, GROUP BY, ORDER BY 절과 같은 구문을 실행하는데 순서가 존재합니다. 이 순서에 의해서 쿼리가 처리되고 어떻게 쿼리문을 작성하느냐에 따라 성능 차이가 발생할 수 있으며 쿼리 실행 시 최종적으로는 결과만 확인할 수 있기 때문에 좀 더 정확한 쿼리 작성을 위해 실행 작동 순서에 대해서 간단히 알아보겠습니다.
문법 작성 순서
1. SELECT 컬럼명
2. FROM 테이블명
3. WHERE
4. GROUP BY
5. HAVING
6. ORDER BY
실행 작동 순서
1. FROM : 조회 테이블 확인
SELECT부터 처리할 것 같지만, 쿼리의 가장 첫 번째 실행 순서는 FROM 절입니다. FROM 절에서는 테이블의 모든 데이터를 가져옵니다.
2. WHERE : 데이터 추출 조건 확인
FROM절에서 읽어온 데이터중에서 조건에 일치하는 데이터만 가져옵니다.
3. GROUP BY : 컬럼 그룹화
WHERE 조건에서 읽어온 데이터를 선택한 컬럼으로 그룹화하여 단일 값으로 축소합니다.
4 HAVING : 그룹화 조건 확인
항상 group by뒤에 위치하고 where 조건절과 마찬가지로 조건을 줄 수 있습니다. 차이점으로는 where 절은 기본적인 조건절로서 우선적으로 모든 필드를 조건에 둘 수 있지만 having 절은 group by 된 이후 특정한 필드로 그룹화된 새로운 테이블에 조건을 줄 수 있습니다.
5. SELECT : 데이터 추출
여러 조건들을 처리한 후 남은 데이터에서 어떤 열을 출력할지 선택합니다.
6. ORDER BY : 데이터 순서 정렬
마지막으로 행의 순서를 정렬합니다.
'데이터베이스' 카테고리의 다른 글
[DB] 트랜잭션과 ACID 특성 (0) | 2022.08.21 |
---|---|
[DB] 데이터베이스 인덱스의 자료구조 (1) | 2022.08.07 |
[DB] 데이터베이스에서 인덱스(Index)를 사용하는 이유 (5) | 2022.06.26 |
[MySQL] 집계함수 COUNT, SUM, AVG, MAX/MIN (0) | 2021.12.20 |
댓글