반응형
- (+)
- 이쪽 값이 맞는게 없으면 맞다고 치고 값은 NULL을 넣어준다.
- <> : != 과 같은 의미
- NTILE
- 데이터를 분할하는 함수, 그룹핑 함수 비슷한데
- 사용 예시를 읽어 본 결과 계산 컬럼(등수, 등급)을 뽑아낼 때 사용하는 것으로 보인다.
- SELECT 절에서 사용되며
- FROM 절이 없이 SELECT 절로 조회된 데이터를 기준으로 수행된다.
- OVER 절 안에서 사용되는 속성도 SELECT 절에 적힌 속성만 될 것 같다.(테스트 필요)
- NTILE(4)라고 하고 데이터 100개가 조회된 경우 각각 25개씩 데이터가 나뉘어진다.
- 조건이 없으면 자르는 기준은 데이터가 조회된 순서대로
- 만약 NTILE(4) 했는데 데이터가 103개라면 26,26,26,25로 맨 앞에서부터 하나씩 가져가게 된다.
- 사용 방법
- NTILE(4) OVER(ORDER BY 직급 DESC)
- 전체 회사에서 직급 기준으로 정렬된 목록을 4등분해서 각각 1,2,3,4를 부여한다.
- NTILE(4) OVER(PARTITION BY 부서 ORDER BY 직급 DESC)
- 각 부서 별로 직급 기준으로 정렬된 목록을 4등분해서 각각 1,2,3,4를 부여한다.
- NTILE(4) OVER(ORDER BY 직급 DESC)
- 데이터를 분할하는 함수, 그룹핑 함수 비슷한데
- DISTINCT
- SELECT 문에 사용되며 SELECT 문의 모든 컬럼에 적용된다.
- LAG
- 정렬된 데이터 기준
- LEAD
- RANK OVER
- LPAD
- RANGE BETWEEN start_point AND end_point
- DEFAULT 값은 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
- UNBOUNDED PRECEDING : start_point만 들어갈 수 있으며, 파티션의 first row
- UNBOUNDED FOLLOWING : end_point만 들어갈 수 있으며, 파티션의 last row
- CURRENT ROW : start, end_point 둘다 가능. 윈도우는 CURRENT ROW에서 start하거나 end 함
- TOP
- MYSQL에서 정렬된 값 순서대로 맨위에거 몇개를 빼오는 함수
- WITH TIES를 붙이면 TOP(3) WITH TIES일때 같은 값이 여러개 있는 경우 그것까지 포함해서 조회
- 연봉으로 정렬했는데 3등과 4등이 연봉이 같을 경우 4줄이 조회된다.
반응형
댓글