[SQLD/P] Query 실행 순서

Hyo Kyun Lee·2022년 12월 1일
0

SQLD/P

목록 보기
49/82

1. Query 실행 순서

SELECT
    DEPT_CODE --부서코드
    ,AVG(SALARY) AS SAL_AVG
FROM
    DEPT_TABLE
WHERE 
    SALARY > 13000
GROUP BY 
    DEPT_CODE
HAVING
    COUNT(*) > 1
ORDER BY DEPT_CODE DESC

위와 같은 쿼리를 실행할때

  • FROM
  • WHERE (FROM에서 가져온 결과를 WHERE로 선별)
  • GROUP BY (분류기준)
  • HAVING (분류기준에 대한 조건 함수)
  • SELECT
  • ORDER BY (최종적으로 가져온 결과에 대한 정렬)

순으로 진행한다.

2. 유의사항

GROUP BY 함수에 대한 집계함수 중 count(*)가 HAVING에 사용되었고, 이 집계함수는 SELECT나 ORDER BY에서도 사용 가능하다.

단, WHERE 절에서는 집계 함수를 사용할 수 없다(집계함수 자체가 하나의 결과이기 때문에 row data인 WHERE절에서는 사용불가)

ORDER BY의 디폴트값이나 기본적인 조회결과의 출력은 오름차순(ASC)으로 나온다.

NULL값은 가장 큰 값으로 인식한다.

3. 참고자료

Orcale 쿼리 실행 순서 - https://myjamong.tistory.com/172

0개의 댓글