2012-03-23 4 views
0

시스템 통합 테스트를 수행하려면 SQL보기를 사용자 정의해야합니다. 하나의 테이블은 트랜잭션과 트랜잭션 당 LINE ITEMS를 추적합니다 (예를 들어, 트랜잭션 2에는 세 개의 항목이 있으므로 동일한 트랜잭션 번호에 해당하는 세 개의 연속 행이 있습니다). 달성해야 할 항목은 추적 할 열을 얻는 것입니다 그 트랜잭션에 대한 항목 수를 나타냅니다. 각 트랜잭션마다 항상 1부터 시작합니다.순차적 인 행 번호 지정

예를 들어, 첫 번째 열은 TransactionNumber이고 두 번째는 DesiredOutput입니다 :

1     1 
1     2 
2     1 
2     2 
2     3 
3     1 
4     1 
4     2 

ETC ...

내가 전체 테이블에 연속 행 번호를하는 방법을 알고,하지만 난 하나를 찾을 수 없습니다 다른 행의 값에 따라 달라지는이 번호 매기기를 참조하십시오.

SQL 서버 2005 +의 경우
+1

그래서 우리는 SQL의 종류는 –

+1

거기에서 시작하여 현재 쿼리를 추가하세요? mysql? mssql? 다른? –

+0

및 데이터베이스의 유형 및 버전 번호 (예 : oracle 8.4, mysql 5 etc.) – Gary

답변

2

와 오라클은 당신이 사용할 수있는 다음과 같은 :

SELECT TransNumber, ROW_NUMBER() OVER(PARTITION BY Transnumber ORDER BY Something) [DESIRED COLUMN OUTPUT] 
FROM YourTable 
+0

감사합니다. Lamak, 시스템을 테스트 할 준비가 되 자마자 시도해 보겠습니다. – user1288283

+0

매력처럼 작동합니다! 무리 감사. – user1288283