2012-05-29 6 views
11

다소 특별한 구문을 발견했습니다. 의미가 무엇인지 알아낼 수 있습니까? 고맙습니다.행 번호() OVER

SELECT ROW NUMBER() OVER (ORDER BY Product.ProductID) FROM Product; 

또한 실패합니다. 저는 특히 ROW NUMBER() OVER 비트에 관심이 있습니다. OVER 키워드를 처음 접했을 때도 마찬가지입니다.

전체 예제가 필요한 경우 알려 주시기 바랍니다. 나는 그것을 명확하게하기 위해 약간 짧게했다. 당신이 ROW_NUMBER에 밑줄을 누락

+4

http://msdn.microsoft.com/en-us/library/ms186734.aspx –

답변

9

ROW_NUMBER() 함수 ORD을 결정하는 OVER (ORDER BY)식이 필요 명확성을 위해 제품명 열에 추가 그 행에 번호가 매겨져있다. 기본 순서는 오름차순이지만 내림차순을 사용할 수도 있습니다. 이 함수는 T-SQL이 T-SQL 외부에서 커서를 검색 할 수 없기 때문에 일련의 레코드를 반복 할 때 행을 추적하는 것과 같은 다양한 작업에 유용합니다. @tunimise fasipe가 정확합니다. _

+0

두 가지 모두에 감사드립니다. 재미있는 것은 내가 읽는 책에 밑줄이없는 몇 가지 예가 포함되어 있기 때문입니다. 나는 오해했다. 나는 오타를 이해했을 것입니다. 고마워. –

6

참고

SELECT ROW_NUMBER() OVER (ORDER BY Products.ProductID) FROM Products; 

그것이 무엇을하는 것은 (제품 일련의 지시로)들이 검색 한 순서대로 제품 테이블의 각 레코드의 행 번호를 출력한다는 것입니다

e.g. 
RowNumber ProductName 
------------------------ 
1   Flower 
2   Bag 
3   Car 
...   ... 

제가

+0

검색된 순서는 ORDER BY- ProductID 열에 의해 결정됩니다. ASC 순서. –