엇그제 같은 결혼식인데..
어느덧 1년하고도 5개월이 지났다.
그 사이 이쁜 수린양도 태어났고.. 참 많은 일이 있었다.
웨딩 촬영 중 한컷이다.
참 마음에 드는 사진이다.
돈 좀 들인 만큼 만족한 촬영이었던거 같다.
걍 컴 정리하다 보이길래 올려본다.
반응형
결과 집합 파티션 내의 행 일련 번호를 반환합니다. 각 파티션의 첫 번째 행은 1로 시작합니다.
FROM 절이 생성한 결과 집합을 ROW_NUMBER 함수가 적용되는 파티션으로 나눕니다. PARTITION BY 구문은 OVER 절(Transact-SQL)을 참조하십시오.
파티션에서 ROW_NUMBER 값이 행에 할당되는 순서를 결정합니다. 자세한 내용은 ORDER BY 절(Transact-SQL)를 참조하십시오. 순위 함수에 <order_by_clause>가 사용된 경우 정수는 열을 나타낼 수 없습니다.
참고: |
---|
OVER 절의 ORDER BY 는 ROW_NUMBER 를 정렬합니다. 'Row Number' 가 아닌 열 기준으로 정렬하는 SELECT 문에 ORDER BY 절을 추가하면 결과 집합은 외부 ORDER BY 를 기준으로 정렬됩니다.
|
다음 예에서는 연간 판매 실적에 따라 AdventureWorks
의 영업 사원에 대한 ROW_NUMBER
를 반환합니다.
USE AdventureWorks; GO SELECT c.FirstName, c.LastName ,ROW_NUMBER() OVER(ORDER BY SalesYTD DESC) AS 'Row Number' ,s.SalesYTD, a.PostalCode FROM Sales.SalesPerson s INNER JOIN Person.Contact c ON s.SalesPersonID = c.ContactID INNER JOIN Person.Address a ON a.AddressID = c.ContactID WHERE TerritoryID IS NOT NULL AND SalesYTD <> 0;
다음 예에서는 행 번호 50
부터 60
까지의 행을 OrderDate
순으로 반환합니다.
USE AdventureWorks; GO WITH OrderedOrders AS ( SELECT SalesOrderID, OrderDate, ROW_NUMBER() OVER (ORDER BY OrderDate) AS 'RowNumber' FROM Sales.SalesOrderHeader ) SELECT * FROM OrderedOrders WHERE RowNumber BETWEEN 50 AND 60;
다음 예에서는 PARTITION BY
인수를 사용하는 방법을 보여 줍니다.
USE AdventureWorks; GO SELECT c.FirstName, c.LastName ,ROW_NUMBER() OVER (PARTITION BY PostalCode ORDER BY SalesYTD DESC) AS 'Row Number' ,s.SalesYTD, a.PostalCode FROM Sales.SalesPerson s INNER JOIN Person.Contact c ON s.SalesPersonID = c.ContactID INNER JOIN Person.Address a ON a.AddressID = c.ContactID WHERE TerritoryID IS NOT NULL AND SalesYTD <> 0;
출처 : http://msdn.microsoft.com/ko-kr/library/ms186734(SQL.90).aspx