AYUDA en MS SQL 7 (otra cosa,otra vez)
-
Les hago una breve explicacion de lo que necesito.
Vieron cuando un buscador (por ejemplo yahoo) uno hace una consulta, y uno le especifica de a cuantos registros mosrar por pagina (por ejemplo 25), bueno necesito hacer eso en MSSQL7.
Estuve buscando en internet y encontre sentencias como LIMIT y OFFSET, pero esto no funciona en el SQL de MS.
Alguien sabe cual es la sintaxis de MSSQL 7 (o de otra desviacion del lenguaje de MSSQL que quizas funcione)
Esto no lo quiero hacer desde el ASP porque no quiero cada vez que le hago hacer avanzar una pagina traiga todo el recordset con todos los registros y haser un seek o movenext, ya que de esta manera estoy llenando la memoria del server con todo el contenido del resultado del query al mismo tiempo. Cosa que es un desperdicio de recursos del servidor.
Debe ser muy cencillo, pero no tengo idea como se hace...
Gracias a Todos.... -
No es lo que necesito, porque TOP devuelve los ultimos X registros, si a esa funcion se la pude utilizar con alguna mas serviria, pero por si sola no me sirve....
Yo lo que le quiero pedir al SQL es esto
select (desde el registro X al registro X+Y) from tabla where campo='algo'
donde X e Y no son campos de la tabla sino cantidad de registros que quier extraer y posicion desde donde sacarlos... -
Ahi es donde tenes que empezar a trucar las cosas
Creando un numero ficticio en una columna temporal, numeras todos los registros del resultado de la consulta.
Supongamos que necesitamos dividir en tres paginas una cantidad de 45 registros.
Todo esto numerado lo podemos volcar en un temporal y hacer selects sobre los temporales
Select top 15 where (condicion) (para el primera pagina)
Select top 15 where (condicion) and (columna_trucha>15) (para 2 pagina)
Select top 15 where (condicion) and (columna_trucha>30) para la tercera.
Lo que vos buscas estoy casi seguro que no existe en este ambito, solo parchando con chapa carton podes llegar a algo parecido. Esto es una idea pero calculo que se puede hacer mucho mejor tambien. -
Gracias, pero no me sirve, porque los registros en la tabla son dinamicos, se agregan y se eliminan todo el tiempo.... y no es recomendable cada vez que hago el query acualize los que voy a extraer y luego lo extraiga en base a este numero trucho como comentas.....
