Pregunta

Como alguien que desarrolla sitios web y hace un poco de SQL Server, parece una obviedad para mí que SQL Server debe apoyar una cláusula simple que indica los resultados sólo debe incluir un rango específico de filas. Por ejemplo, las filas 30 a 39.

En su forma actual, la implementación de paginación en SQL Server es en realidad un poco más allá de la capacidad de muchos desarrolladores web cuando su objetivo principal no es SQL.

Además, sería simplificar enormemente las consultas que ya puede ser complejo debido a uniones y otras condiciones.

Además de eso, soy de la opinión de que una cláusula de este tipo puede tienen una mejor oportunidad de conseguir optimizado internamente con el tiempo debido a la lógica sería enteramente bajo el control de Microsoft.

Me trajo esto hace algún tiempo en otro foro y muchas de las respuestas parece sugerir que esto no sería deseable.

Dado que cualquiera de las técnicas existentes para paginación se dejan intactos, ¿qué razón puede haber para no añadir una cláusula de este tipo? Y sería mucho mejor para la gente como yo.

Puede alguien que de una buena razón por la que Microsoft no ha hecho esto?

¿Fue útil?

Solución

Microsoft ha hecho esto con la próxima versión de SQL Server, nombre en código "Denali", así como SQL CE 4. Mira la partes OFFSET y FETCH de la cláusula ORDER BY aquí: http://msdn.microsoft.com/en-us/library/ms188385(v=sql.110).aspx

Otros consejos

En este momento SET ROWCOUNT , TOP () , y ROW_NUMBER () puede ayudarle a:)

Aquí es alguna muestra de SO

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top