0
너무 많은 시간을 낭비했다는 문제가 있습니다.SQL 서버 - 그룹별로 최상위 x 행 선택
이- 플랫폼 : SQL 서버는
- 당신은 나이와 우편 번호
- 목록 테이블이 각 우편 번호의 상위 5 오래된 사람들
내가 볼 수있는 것은이 같은 단순화 할 수있다 커서를 사용하여이를 수행하는 방법이 있지만이를 달성하기위한 방법은 무엇입니까?
모든 의견을 환영합니다!
너무 많은 시간을 낭비했다는 문제가 있습니다.SQL 서버 - 그룹별로 최상위 x 행 선택
이내가 볼 수있는 것은이 같은 단순화 할 수있다 커서를 사용하여이를 수행하는 방법이 있지만이를 달성하기위한 방법은 무엇입니까?
모든 의견을 환영합니다!
SELECT *
FROM (
SELECT *
,ROW_NUMBER() OVER (PARTITION BY zipcode ORDER BY Age DESC) rn
FROM TableName
)A
WHERE RN <= 5
를 사용할 필요가
당신은 ROW_NUMBER의 분석 기능을
SELECT *
FROM
(SELECT name,
age,
zipcode,
ROW_NUMBER() OVER
(PARTITION by zipcode
order by age desc)
as seq
) T
Where T.seq <=5