> 데이터 베이스 > MySQL 튜토리얼 > 순수 SQL에서 LINQ의 .Skip(1000).Take(100)를 어떻게 복제하나요?

순수 SQL에서 LINQ의 .Skip(1000).Take(100)를 어떻게 복제하나요?

Barbara Streisand
풀어 주다: 2024-12-22 05:21:13
원래의
649명이 탐색했습니다.

How to Replicate LINQ's .Skip(1000).Take(100) in Pure SQL?

LINQ의 .Skip(1000).Take(100)

LINQ의 .Skip(1000).Take(100)에 해당하는 순수 SQL 방법을 사용하면 데이터세트에서 특정 행 범위를 선택할 수 있습니다. 이는 OFFSET 및 FETCH 키워드를 사용하는 SQL을 통해 달성할 수 있습니다.

.Skip()과 동등한 SQL

.Skip(1000) 메서드는 다음과 같이 행을 필터링합니다. 처음 1000개 행을 건너뜁니다. SQL에서는 OFFSET 키워드를 사용하여 이를 달성할 수 있습니다. 예를 들어 Sales.SalesOrderHeader 테이블의 처음 1000개 행을 건너뛰려면 다음을 사용합니다.

SELECT *
FROM Sales.SalesOrderHeader
OFFSET 1000 ROWS
로그인 후 복사

SQL Equivalent of .Take()

The .Take( 100) 메소드는 특정 개수의 행을 검색합니다. SQL에서는 FETCH 키워드를 사용하여 이를 달성할 수 있습니다. 처음 1000행을 건너뛴 후 다음 100행을 검색하려면 다음을 사용합니다.

FETCH NEXT 100 ROWS ONLY
로그인 후 복사

결합 쿼리

두 작업을 결합하면 .Skip(1000에 해당하는 SQL입니다. ).테이크(100) is:

SELECT *
FROM Sales.SalesOrderHeader
OFFSET 1000 ROWS
FETCH NEXT 100 ROWS ONLY
로그인 후 복사

이 쿼리는 Sales.SalesOrderHeader 테이블에서 1000-1100 행을 선택합니다. 이는 특히 대규모 데이터세트로 작업할 때 특정 행 범위를 검색하는 효율적인 방법입니다.

위 내용은 순수 SQL에서 LINQ의 .Skip(1000).Take(100)를 어떻게 복제하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿