[DB] SQL 문법 : ORDER BY 키워드, 집계 함수, GROUP BY와 HAVING BY

임유빈·2022년 7월 26일
0

DB

목록 보기
11/15
post-thumbnail

1. ORDER BY 키워드, ASC과 DESC

사용 전

사용 후

  • ORDER BY 를 포함해서 조건절에서는 처음 조건에 먼저 정렬을 하고, 그 정렬 조건 안에서 다음 조건을 정렬한다. 성능에 영향이 매우 크기 때문에 꼭 필요할 때만 사용하며, WHERE 절을 사용하여 범위를 축소한 뒤에 ORDER BY를 사용해준다.

  • 튜플 중에 딱 한명만 검색하는 경우에도 사용하며 보통은 정렬을 해서 값을 도출한다 : 검색 속도가 빠르기 때문

  • ASC(기본) : 오름차순

  • DESC : 내림차순 (SQL*Puls에서만 사용 가능, SQL Developer에선 사용이 불가능하다.)

  • ORDER BY에서 NULL값은 가장 마지막에 검색된다.

2. 집계 함수(aggregate function)

(1) 종류

(2) 사용

--집계함수를 이용한 검색 : SUM, MAX, COUNT, MAX...
--집계 함수는 WHERE 절에서는 사용할 수 없고, SELECT 절이나 HAVING 절에서만 사용이 가능하다.
--집계 함수는 NULL인 속성 값은 제외하고 계산한다.

3. GROUP BY와 HAVING BY

(1) GROUP BY

특정 속성의 값이 같은 투플을 모아 그룹을 만들고, 그룹별로 검색하는 것이다.

(2) HAVING BY

GROUP BY의 WHERE절, 그룹을 나누는 기준이 되는 튜플을 SELECT 절에도 작성하는 것이 좋다.
집계함수를 이용한 조건은 WHERE 절에는 작성할 수 없고, HAVING절에서 작성이 가능하다. GROUP BY + HAVING은 세트라고 생각하면 된다.

0개의 댓글