그룹 함수
여러 행에 대해 한번에 처리가 가능한 다중행 함수
날짜도 숫자계산 가능->min max를 날짜에도 적용이 가능하다
count 함수
개수를 구함
count(*), count(expr-컬럼)
-count(*)는 중복되는 행과 null값을 포함하는 행을 포함하여 테이블 행의 수를 리턴
-count(컬럼)은 컬럼에 의해 인식된 열에서 null이 아닌 행의 수를 리턴함
그룹 함수 사용법?
group by절과 having 절
GROUP BY절은 WHERE절 다음 ORDER절 사이에 쓰임
특정 그룹별로 집계를 구할 때 등 사용됨
group by절에서 사용한 컬럼은 select절에서 사용 가능.
그러나 group by절에서 사용하지 않은 컬럼은 select절에서 사용할 수 없다!
(오라클 기준)
그루핑은 꼭 하나일 필요는 없음. 2~3개도 가능. 보통 2개까지 하곤 함
where절에 그룹함수를 사용하여 제한할 수 없음.
HAVING절
group by절의 조건 having
둘이 세트
where절에는 열 선택에 대한 조건이 들어가고,
그루핑에 대한 조건은 having절에 들어감
+)
Rollup, cube, Grouping
rollup구문은 group by절과 같이 사용됨
select절에 rollup을 사용함으로써 보통의 select된 데이터와 그 데이터의 총계를 구할 수 있다.
즉 그룹핑된 결과의 합계를 구한다
rollup은 주 그룹의 합계를 구하고 cube는 주 그룹과 서브그룹의 모든 토탈을 구한다.
그룹에 의해 나온 행인지, rollup과 cube에 의해 나온 행인지 구분해주는 함수
=>grouping
group by이면 0, rollup과 cube에 의한 것이면 1을 반환한다.
'JAVA' 카테고리의 다른 글
영화예매 프로젝트 로그인 만들기 console (0) | 2022.12.05 |
---|---|
221110 oracle join1 (0) | 2022.11.10 |
221031 Network (0) | 2022.10.31 |
221031 정규 표현식 (0) | 2022.10.31 |
221031 Semaphore (0) | 2022.10.31 |