SQL/DB Essentials - CH05

Namlulu·2022년 3월 5일
0

DB

목록 보기
5/10

Group

  1. 행을 그룹화 해서 묶음
  2. 집계함수를 통해 계산 가능
  3. COUNT, SUM, AVG, MIN, MAX, STEDEV, VARIAN
    • NULL값을 제외함
  4. DISTINCT
  5. 제거된 column을 select절에서 사용할 수 없음
  6. 집단 함수의 중첩은 안되기 때문에 with 절 활용

Having

  1. 그룹화된 결과에 조건식을 적용
  2. 집단함수가 없을 경우에는 where 쓰는 게 더 효율적임
  3. with 절로 그룹한 결과를 다시 where로 하는 방식도 있음

Order

  1. 정렬하는 기능
  2. 별칭 사용 가능
  3. index + 1도 사용 가능 ex) ORDER BY 2, 4;
  4. SELECT 목록에 없는 컬럼을 ORDER 기준으로 사용할 수 없음

LIMIT

  1. 개수를 제한하는 기능
  2. 오라클에서는 ROWNUM이라고 따로 있음
  3. 숫자 2개 받을 수도 있음 ex) LIMIT 10, 5;
  4. offset과 함께 페이지네이션 구현 가능

Top-N Query

  1. 등수가 높은 n개 튜플 검색
  2. 동점자 처리 기능 제공 기능을 제공해야 함
  3. 윈도우 함수 (추후 깊게 다시 공부)
    • ROW_NUMBER: 일련번호 부여
    • RANK: 순위 제공, 동점자 처리 제공
    • SELECT 절에만 사용 가능
SELECT ROW_NUMBER() OVER(ORDER BY orderDate DESC) AS rowNo,
       RANK() OVER(ORDER BY orderDate DESC) AS dateRank
FROM orders
// WHERE rowNo BETWEEN 40 AND 44; 추가시 페이지네이션
profile
Better then yesterday

0개의 댓글