뷰
실제 데이터 가지고 있지 않는 가상테이블
뷰 사용 장점
✔ 독립성 : 테이블 구조가 변경되어도 뷰를 사용하는 응용 프로그램은 변경하지 않아도 된다.
✔ 편리성 : 복잡한 질의를 뷰로 생성함으로써 관련 질의를 단순하게 작성할 수 있다.
✔ 보안성 : 직원의 급여정보와 같이 숨기고 싶은 정 보가 존재할 때 사용
➡ 생성 : CREATE VIEW V_PLAYER_TEAM AS SELECT ... ;
➡ 삭제 : DROP VIEW V_PLAYER_TEAM;
그룹함수
ROLLUP
SELECT절에서 사용되어 SELECT된 데이터와 그 데이터의 총계를 구할 수 있다.
CUBE
SELECT절에서 사용되어 결합 가능한 모든 값들을 구할 수 있다.
GROUPING
해당 ROW가 GROUP BY에 의한 결과면 0, ROLLUP이나 CUBE에 의한 결과는 1
GROUPING SETS
인수들에 대한 개별 집계
윈도우 함수
행과 행간의 관계를 정의하거나 행과 행간을 비교, 연산하는 함수
순위 관련 함수
- RANK : 동일한 값에 대해서는 동일한 순위를 부여 (1,2,2,4)
- DENSE_RANK : 동일한 순위를 하나의 등수로 간 주(1,2,2,3)
ex) SELECT DENSE_RANK() OVER (ORDER BY SAL DESC) DENSE_RANK
- ROW_NUMBER : 동일한 값이라도 고유한 순위 부 여 (1,2,3,4)
집계 관련 함수
- SUM : 파티션별 윈도우의 합 구할 수 있다. ex) 같은 매니저를 두고 있는 사원들의 월급 합
- MAX, MIN : 파티션별 윈도우의 최대, 최소값을 구할 수 있다. ex)같은 매니저를 두고 있는 사원들 중 최대 값
- AVG : 원하는 조건에 맞는 데이터에 대한 통계 값 ex) 같은 매니저 내에서 앞의 사번과 뒤의 사번의 평균
- COUNT : 조건에 맞는 데이터에 대한 통계 값 ex) 본인의 급여보다 적게 받는 인원수
행 순서 관련 함수 (SQL Server X 지원)
- FIRST_VALUE : 파티션별 윈도우의 처음 값
- LAST_VALUE : 파티션별 윈도우의 마지막 값
- LAG : 파티션별 윈도우에서 이전 몇 번째 행의 값
- LEAD : 파티션별 윈도우에서 이후 몇 번째 행의 값
비율 관련 함수
- RATIO_TO_REPORT : SUM 파티션 내 전체 에 대 한 행별 칼럼 값의 백분율을 소수점으로 구할 수 있 다. >0, <=1 -
- PERCENT_RANK : 파티션별 윈도우에서 처음 값 을 0, 1 마지막 값을 로 하여 행의 순서별 백분율을 구한다. 0>=,<=1
- CUME_DIST : 현재 행보다 작거나 같은 건수에 대 한 누적백분율을 구한다. >0, <=1
- NTILE : 파티션별 전체 건수를 인수 값으로 N등분 한 결과를 구할 수 있다.
'자격증 > SQLD' 카테고리의 다른 글
SQLD 기출문제 및 요약 모음 (2022 추가) (73) | 2021.05.26 |
---|---|
SQLD 요약 - (8) SQL활용_절차형SQL,PROCEDURE, TRIGGER (0) | 2021.05.25 |
SQLD 요약 - (6) SQL활용_JOIN, 계층형질의,서브쿼리 (0) | 2021.05.25 |
SQLD 요약 - (5) SQL기본_GROUPBY, ROWNUM, JOIN (0) | 2021.05.25 |
SQLD 요약 - (4) SQL기본_연산자,함수 (0) | 2021.05.25 |
댓글