¿Cómo puedo seleccionar filas por range?

Posible duplicado:
Seleccionar instrucción en SQLite reconociendo el número de fila

Por ejemplo, SELECT * FROM table WHERE [row] BETWEEN x AND y

¿Cómo puede hacerse esto? He leído un poco, pero no he encontrado nada específicamente correcto.

Imagine una list en la que desee resultados paginados por una cantidad de resultados X, por lo que para la página 10 necesitaría resultados de las filas 10 * X a 10 * X + X. En lugar de mostrar TODOS los resultados de una vez

Para mysql tiene límite, puede activar la consulta como:

 SELECT * FROM table limit 100` -- get 1st 100 records SELECT * FROM table limit 100, 200` -- get 200 records beginning with row 101 

Para Oracle puedes usar rownum

Ver mysql seleccionar la syntax y el uso de limit aquí .

Para SQLite, tiene limit, offset . No he usado SQLite, pero lo he comprobado en la documentation de SQLite . Ver ejemplo para SQLite aquí .

Puedes usar rownum :

 SELECT * FROM table WHERE rownum > 10 and rownum <= 20 

Después de su aclaración , está buscando el límite:

 SELECT * FROM `table` LIMIT 0, 10 

Esto mostrará los primeros 10 resultados de la database.

 SELECT * FROM `table` LIMIT 5, 5 . 

Mostrará 5-10

La syntax sigue el patrón:

 SELECT * FROM `table` LIMIT [row to start on], [how many to include] . 

El SQL para seleccionar filas donde una columna se encuentra entre dos valores es:

 SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2 

Ver: http://www.w3schools.com/sql/sql_between.asp

Si quiere ir al número de fila, puede usar rownum:

 SELECT column_name(s) FROM table_name WHERE rownum BETWEEN x AND y 

Sin embargo, necesitamos saber qué motor de database está utilizando, ya que Rownum es diferente para la mayoría.

Usando entre condiciones

 SELECT * FROM TEST WHERE COLUMN_NAME BETWEEN x AND y ; 

O usando operadores Just,

 SELECT * FROM TEST WHERE COLUMN_NAME >= x AND COLUMN_NAME <= y; 

¿Has probado tu propio código?
Esto debería funcionar:

 SELECT * FROM people WHERE age BETWEEN x AND y 

Use la cláusula LIMIT :

 /* rows x- y numbers */ SELECT * FROM tbl LIMIT x,y; 

consulte: http://dev.mysql.com/doc/refman/5.0/en/select.html

Suponiendo que id es la key principal de la tabla:

 SELECT * FROM table WHERE id BETWEEN 10 AND 50 

Para los primeros 20 resultados

 SELECT * FROM table order by id limit 20;