ホームページ >データベース >mysql チュートリアル >Pure SQL で LINQ の .Skip(1000).Take(100) をレプリケートするにはどうすればよいですか?
LINQ の .Skip(1000).Take(100) と同等の純粋な SQL
LINQ の .Skip(1000).Take(100)このメソッドを使用すると、データセット内の特定の範囲の行を選択できます。これは、SQL で OFFSET および FETCH キーワードを使用して実現できます。
SQL .Skip() と同等
.Skip(1000) メソッドは、次のように行をフィルタリングします。最初の 1000 行をスキップします。 SQL では、これは OFFSET キーワードを使用して実現できます。たとえば、Sales.SalesOrderHeader テーブルの最初の 1000 行をスキップするには、次を使用します。
SELECT * FROM Sales.SalesOrderHeader OFFSET 1000 ROWS
SQL 同等の .Take()
The .Take( 100) メソッドは、特定の数の行を取得します。 SQL では、これは FETCH キーワードを使用して実現できます。最初の 1000 行をスキップして次の 100 行を取得するには、次を使用します。
FETCH NEXT 100 ROWS ONLY
結合クエリ
2 つの操作を組み合わせたもので、.Skip(1000 と同等の SQL) ).Take(100)は:
SELECT * FROM Sales.SalesOrderHeader OFFSET 1000 ROWS FETCH NEXT 100 ROWS ONLY
このクエリは、Sales.SalesOrderHeader テーブルから行 1000 ~ 1100 を選択します。これは、特に大規模なデータセットを操作する場合に、特定の範囲の行を取得する効率的な方法です。
以上がPure SQL で LINQ の .Skip(1000).Take(100) をレプリケートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。