4
계산 된 열을 얻으려고하는 SQL 서버 테이블이 있습니다. MyPartition - 변수 @segment를 기반으로하는 파티션의 번호를 나타냅니다. 예를 들어, @segment = 3이면 다음 출력이 true입니다.TSql 파티션 및 rownumber를 기반으로하는 열 반환
RowID | RowName | MyPartition
------ | -----------| -------
1 | My Prod 1 | 1
2 | My Prod 2 | 1
3 | My Prod 3 | 1
4 | My Prod 4 | 2
5 | My Prod 5 | 2
6 | My Prod 6 | 2
7 | My Prod 7 | 3
8 | My Prod 8 | 3
9 | My Prod 9 | 3
10 | My Prod 10 | 4
내가 지금까지 가지고하는 것은 같은 것입니다 :
SELECT
RowId,
RowName,
ROW_NUMBER() OVER(PARTITION BY RowId ORDER BY RowId ASC) AS MyPartition
FROM MyTable
ORDER BY RowId
는하지만 파티션을 추측 할 수처럼 나는를 구성하는 방법을 확실하지 오전 = 1 mypartition의 모든 값을주는 ROWID에 분할 이것을 달성하기위한 partition by 절.
주어진 그룹 내에서 가장 @segment 요소를 넣어하려고 어떻습니까? 즉 위의 예를 기반으로하면 3 개의 1과 3의 2 등이 필요합니다. –