반응형
이전에 포스팅에서 mysql 기준 limit 을 설명하면서 sqlserver 에서의 Top N 에 대해서 잠깐 얘기한 적이 있다.
자세한 내용은 아래 참고 포스팅 참고 바란다.
sqlserver 에서 상위 몇개를 뽑을땐 Top n을 사용하는데 옵션으로
TOP WITH TIES
를 추가할수 있다.
TOP 과 동일하게 상위 N개의 데이터를 조회하지만 동일한 데이터가 있을경우엔 함께 출력이 된다.
또한 TOP WITH TIES를 사용하기 위해서는 ORDER BY 절이 반드시 함께 와야 한다.
동일한 데이터는 ORDER BY절 뒤의 오는 컬럼이 기준이 된다.
id | cnt |
a | 1 |
a | 1 |
b | 2 |
만약 top만 사용할 경우
select top 1 id, cnt from table order by id, cnt
id | cnt |
a | 1 |
이 나오지만 with ties를 추가하면
select top 1 with ties id, cnt from table order by id, cnt
id | cnt |
a | 1 |
a | 1 |
동일한 값들은 같이 출력이 된다.
참고 포스팅
https://thenicesj.tistory.com/534
반응형
'IT > Database' 카테고리의 다른 글
[Oracle] 테이블 명 조회 쿼리 / 뷰 조회 쿼리 / 프로시저 / 시퀀스 조회 쿼리 (43) | 2023.11.03 |
---|---|
그룹함수 (GROUP BY, ROLLUP, CUBE, GROUPING-SET, GROUPING) (44) | 2023.11.02 |
[Oracle] 에러 표시 방법(ORA-00000) (sqlca.sqlcode) (42) | 2023.10.31 |
[Oracle] SELECT .... FOR UPDATE 문 (43) | 2023.10.29 |
[Oracle] NTILE 함수 (44) | 2023.10.28 |
댓글