반응형
SELECT Query문은 FROM/JOIN, WHERE, GROUP BY, HAVING, SELECT, ORDER BY 순서로 실행된다.
1. FROM/JOIN 절
Query 실행 시 FROM 절이 가장 먼저 실행된다.
FROM 절에서는 조회할 테이블을 지정하고, 이후 JOIN을 실행해 하나의 가상 테이블로 결합한다.
FROM 절이 가장 먼저 실행되기 때문에 WHERE에서 JOIN된 테이블의 필드를 사용할 수 있는 것이다.
2. WHERE 절
WHERE 절에서는 조회해온 테이블에서 조건에 맞는 데이터를 필터링한다.
3. GROUP BY
선택한 컬럼을 기준으로 그룹핑을 진행한다.
4. HAVING 절
GROUP BY를 이용해 그룹핑 한 후에 각 그룹을 필터링할 때 사용되는 조건절이다.
GROUP BY는 WHERE 이후에 실행되기 때문에 WHERE 절에서는 GROUP BY 결과를 필터링할 수 없다.
따라서 HAVING이 존재한다.
5. SELECT 절
위의 과정을 통해 여러 조건들을 처리한 후 남은 데이터에서 어떤 열을 출력해줄지 선택한다.
여기서 Windows 함수도 실행된다.
6. ORDER BY 절
출력할 데이터들의 행의 순서를 어떻게 보여줄지 정렬하기 위한 기준을 명시하는 절이다.
ORDER BY 절은 SELECT 절보다 뒤에 실행되기 때문에 SELECT 절의 결과를 사용할 수 있다.
예를 들면 다음과 같다.
SELECT m.name AS member_name
FROM member AS m
ORDER BY member_name;
7. LIMIT 절
조회된 데이터 중 총 몇 개의 행을 보여줄지 선택한다.
반응형
'DataBase' 카테고리의 다른 글
[MSSQL] DB Connection Pool 조회 및 연결된 세션 정보 조회 쿼리 (0) | 2024.02.21 |
---|---|
[MySQL] MySQL 외부 접속 Connection Locked 에러 해결 (0) | 2024.01.22 |
[MySQL] 형변환 CAST 함수 / CONVERT 함수 사용 방법 (0) | 2023.04.18 |
[MySQL] Too many connections 에러 - Connection 수 확인 (0) | 2022.12.22 |
[MongoDB] Windows10 MongoDB 설치 (0) | 2022.12.02 |