ORDER BY
- 조회 결과를 특정 attribute 기준으로 정렬
- 기본은 오름차순 정렬이며
ASC
로 표기
- 내림차순은
DESC
로 표기
SELECT *
FROM article ORDER BY created_at [ASC];
- 위 쿼리는 작성일 순서로 오름차순 정렬한
article
결과를 반환한다.
aggregate function
- 여러 tuple들의 정보를 요약해서 하나의 값으로 추출하는 함수
- 대표적으로
COUNT
, SUM
, MAX
, MIN
, AVG
함수가 있음
- NULL 값들은 제외한다.
SELECT COUNT(*) FROM article;
GROUP BY
SELECT C.article_id, COUNT(*)
FROM comment C
GROUP BY C.article_id;
- 특정 attribute를 기준으로 그룹을 나누어서 그룹별로 aggregate function을 적용할때 사용한다.
- 위 쿼리에서는
comment
에서 article_id
별로 그룹화하여 각 그룹별 개수를 출력하는 것이다.
HAVING
SELECT C.article_id, COUNT(*)
FROM comment C
GROUP BY C.article_id
HAVING COUNT(*) >= 7;
HAVING
은 GROUP BY
와 함꼐 사용한다.
GROUP BY
의 결과값을 바탕으로 그룹에 조건을 정의할 때 사용한다.
- 위 쿼리에서는
article_id
별로 그룹화했을 때 7개 이상인 그룹만 출력하는 것이다.