Comment émuler les .Skip() et .Take() de LINQ en SQL
LINQ fournit les .Skip() et .Take( ) méthodes pour filtrer une collection d'objets, en ignorant le nombre spécifié d'éléments, puis en prenant le nombre spécifié suivant. SQL n'a pas d'équivalents directs à ces méthodes, mais il existe des moyens d'obtenir des résultats similaires.
Pour émuler .Skip() en SQL, la clause OFFSET peut être utilisée. Par exemple, si vous souhaitez ignorer les 1 000 premières lignes d'une table de base de données spécifique, vous pouvez utiliser le SQL suivant :
SELECT * FROM table_name OFFSET 1000 ROWS
Pour émuler .Take() en SQL, la clause FETCH NEXT peut être utilisée . Si vous souhaitez prendre les 100 premières lignes après avoir sauté les 1000 premières lignes, vous pouvez utiliser le SQL suivant :
SELECT * FROM table_name OFFSET 1000 ROWS FETCH NEXT 100 ROWS ONLY
Ces solutions vous permettent de filtrer les données sans sélectionner la table entière puis de la traiter en mémoire , ce qui peut améliorer considérablement les performances des grandes tables.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!