집 >데이터 베이스 >MySQL 튜토리얼 >SQL Server에서 LIMIT 기능을 구현하는 방법은 무엇입니까?
SQL Server 쿼리에서 결과 집합 제한
SQL Server는 MySQL의 LIMIT
절 기능을 미러링하여 쿼리에서 반환되는 행 수를 제한하는 여러 가지 방법을 제공합니다. 다음 기술을 살펴보겠습니다.
SQL Server 2005 이상:
ROW_NUMBER()
기능은 2005 이상 버전에 대한 우아한 솔루션을 제공합니다.
<code class="language-sql">USE AdventureWorks; GO WITH NumberedOrders AS ( SELECT SalesOrderID, OrderDate, ROW_NUMBER() OVER (ORDER BY OrderDate) AS RowNum FROM Sales.SalesOrderHeader ) SELECT * FROM NumberedOrders WHERE RowNum BETWEEN 10 AND 20;</code>
이렇게 하면 각 행에 고유한 행 번호가 할당되어 특정 행 범위를 선택할 수 있습니다.
SQL Server 2000 이하:
이전 버전(2000 이하)의 경우 TOP
절이 포함된 중첩 쿼리가 필요합니다.
<code class="language-sql">SELECT TOP 10 * FROM (SELECT TOP 20 * FROM Table ORDER BY Id) AS LimitedSet ORDER BY Id DESC;</code>
이 중첩 쿼리는 먼저 Id
에 따라 정렬된 상위 20개 행을 검색한 다음 외부 쿼리가 해당 하위 집합에서 상위 10개를 선택하여 원하는 행 제한을 달성합니다.
ROW_NUMBER()
(최신 버전의 경우) 또는 중첩 쿼리가 있는 TOP
절(이전 버전의 경우)을 사용하면 절.LIMIT
위 내용은 SQL Server에서 LIMIT 기능을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!