03_GROUP BY HAVING

Hyunny ·2023년 5월 17일
0

SQL

목록 보기
4/11
post-thumbnail

📌 GROUP BY절 : 같은 값들이 여러개 기록된 칼럼을 가지고 같은 값들을 하나의 그룹으로 묶음

텍스트GROUP BY 컬럼명 | 함수식, ...
여러개의 값을 묶어서 하나로 처리할 목적으로 사용하며, 그룹으로 묶은 값에 대해서 SELECT절에서 그룹 함수를 사용함
그룹 함수는 한개의 결과 값만 산출하기 때문에, 그룹이 여러 개일 경우 오류 발생..! 여러 개의 결과 값을 산출하기 위해 그룹함수가 적용된 그룹의 기준을 ORDER BY 절에 기술하여 사용

WHERE절 GROUP BY절을 혼합하여 사용
WHERE절 : 각 컬럼 값에 대한 조건


📃 HAVING절 : 그룹함수로 구해 올 그룹에 대한 조건을 설정할 때 사용
HAVING 컬럼명 | 함수식 비교연산자 비교값

🔊 집계함수 (ROLLUP, CUBE) : 그룹 별 산출한 결과 값이 집계를 계산하는 함수, GROUP BY 절에만 작성하는 함수

📃 ROLLUP 함수 : 그룹별로 중간 집계 처리를 하는 함수
📃 CUBE 함수 : 그룹별 산출한 결과를 집계하는 함수


🔊 SET OPERATION (집합 연상)

  • 여러 개의 SELECT 결과물을 하나의 쿼리로 만드는 연산자
  • 여러가지 조건이 있을 때 그에 해당하는 여러개의 결과값을 결합시키고 싶을때 사용
    📃 UNION : OR 같은 개념 (합집합) --> 중복 제거
    📃 INTERSECT : AND 같은 개념 (교집합)
    📃 UNION ALL : OR 결과 값에 AND 결과값이 더해진거 ( 합집합+교집합 ) --> 중복 미제거
    📃 MINUS : 차집합 개념

🔊 SELECT문 해석 순서

5 : SELECT 컬럼명 AS 별칭, 계산식, 함수식
1 : FROM 참조할 테이블명
2 : WHERE 컬럼명 | 함수식 비교연산자 비교값
3 : GROUP BY 그룹을 묶을 컬럼명
4 : HAVING 그룹함수식 비교연산자 비교값
6 : ORDER BY 컬럼명 | 별칭 | 컬럼순번 정렬방식 [NULLS FIRST | LAST];

profile
개발 learning ... 📝

0개의 댓글