티스토리 뷰
1. 집계 함수
집계 함수 | 사용 목적 |
COUNT(*) | NULL 값을 포함한 행의 수를 출력 |
COUNT(표현식) | 표현식의 값이 NULL 값인 것을 제외한 행의 수를 출력 |
SUM([DISTINCT | ALL] 표현식) | 표현식의 NULL 값을 제외한 합계를 출력 |
AVG([DISTINCT | ALL] 표현식) | 표현식의 NULL 값을 제외한 평균을 출력 |
MAX([DISTINCT | ALL] 표현식) | 표현식의 최대값 출력 (문자, 날짜 데이터도 가능) |
MIN([DISTINCT | ALL] 표현식) | 표현식의 최소값 출력 (문자, 날짜 데이터도 가능) |
STDDEV([DISTINCT | ALL] 표현식) | 표현식의 표준 편차를 출력 |
VARIAN([DISTINCT | ALL] 표현식) | 표현식의 분산을 출력 |
2. GROUP BY 와 HAVING 의 특성
- 집계 함수를 쓰려면 GROUP BY 를 통해 소그룹별 기준을 정해야 한다
- 집계 함수의 통계 정보는 NULL 값을 가진 행을 제외하고 수행한다
- GROUP BY 절에서는 SELECT 절과는 달리 ALIAS 명을 사용할 수 없다
- 집계 함수는 WHERE 절에는 올 수 없다. (GROUP BY보다 WHERE가 먼저 수행되기 때문!)
- HAVING 절은 GROUP BY 절의 기준 항목이나 소그룹의 집계 함수를 이용한 조건을 표시할 수 있다
3. ORDER BY
* SELECT 절에 없는 Column을 ORDER BY 절에서 사용할 수 있다
* 인라인 뷰에 정의된 select Column을 메인 쿼리에서 사용할 수 있다. (정의되지 않은 건 안됨)
* GROUP BY 절 사용시 SELECT 절에 일반 칼럼을 사용할 수 없다.
SELECT JOB, SAL
FROM EMP
GROUP BY JOB
HAVING COUNT(*) > 0
ORDER BY SAL;
SELECT JOB, SAL ; *
ERROR: GROUP BY 표현식이 아니다.
* GROUP BY 절 사용시 ORDER BY 절에 일반 칼럼을 사용할 수 없다.
SELECT JOB
FROM EMP
GROUP BY JOB
HAVING COUNT(*) > 0
ORDER BY SAL;
ORDER BY SAL; *
ERROR: ORDER BY 표현식이 아니다.
* GROUP BY 절 사용시 ORDER BY 절에 집계 칼럼을 사용할 수 있다.
'DB' 카테고리의 다른 글
반정규화 (0) | 2020.07.22 |
---|---|
SQL - JOIN (1) (0) | 2020.07.08 |
SQL - JOIN (0) (0) | 2020.07.08 |
SQL (0) | 2020.07.08 |
Tibero Query (0) | 2020.03.05 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- WebClient
- 코테 log
- 실용주의
- effective-java
- 이벤트스토밍
- Encoding
- querydsl
- annotation
- 암호화
- ASCII
- SHA
- ActiveAdmin
- 메모리 릭
- aws
- IntelliJ
- Java
- Lombok
- 사고..
- fetchResults
- SQL 전문가 가이드
- Spring-Boot
- 이펙티브자바
- gitignore
- Generic
- TroubleShooting
- point
- ruby
- DesignSystem
- Git
- sort algorithm
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함