sql >> Base de Datos >  >> RDS >> SQLite

Límite de SQLite

Resumen :en este tutorial, aprenderá a usar SQLite LIMIT cláusula para restringir el número de filas devueltas por una consulta.

Introducción a SQLite LIMIT cláusula

El LIMIT cláusula es una parte opcional de SELECT declaración. Usas el LIMIT cláusula para restringir el número de filas devueltas por la consulta.

Por ejemplo, un SELECT declaración puede devolver un millón de filas. Sin embargo, si solo necesita las primeras 10 filas en el conjunto de resultados, puede agregar el LIMIT cláusula al SELECT instrucción para recuperar 10 filas.

A continuación se ilustra la sintaxis de LIMIT cláusula.

SELECT
	column_list
FROM
	table
LIMIT row_count;Code language: SQL (Structured Query Language) (sql)

El row_count es un entero positivo que especifica el número de filas devueltas.

Por ejemplo, para obtener las primeras 10 filas en las tracks tabla, utiliza la siguiente instrucción:

SELECT
	trackId,
	name
FROM
	tracks
LIMIT 10;Code language: SQL (Structured Query Language) (sql)

Pruébalo

Si desea obtener las primeras 10 filas a partir de la fila 10 del conjunto de resultados, use OFFSET palabra clave como la siguiente:

SELECT
	column_list
FROM
	table
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)

O puede usar la siguiente sintaxis abreviada de LIMIT OFFSET cláusula:

SELECT
	column_list
FROM
	table
LIMIT offset, row_count;Code language: SQL (Structured Query Language) (sql)

Por ejemplo, para obtener 10 filas a partir de la fila 11 en las tracks tabla, utiliza la siguiente instrucción:

SELECT
	trackId,
	name
FROM
	tracks
LIMIT 10 OFFSET 10;Code language: SQL (Structured Query Language) (sql)

Pruébalo

A menudo encuentras los usos de OFFSET en aplicaciones web para paginar conjuntos de resultados.

SQLite LIMIT y ORDER BY cláusula

Siempre debe usar el LIMIT cláusula con el ORDER BY cláusula. Porque desea obtener una cantidad de filas en un orden específico, no en un orden no especificado.

El ORDER BY la cláusula aparece antes del LIMIT cláusula en el SELECT declaración. SQLite ordena el conjunto de resultados antes de obtener el número de filas especificado en LIMIT cláusula.

SELECT
   column_list
FROM
   table
ORDER BY column_1
LIMIT row_count;Code language: SQL (Structured Query Language) (sql)

Por ejemplo, para obtener las 10 pistas más grandes por tamaño, utilice la siguiente consulta:

SELECT
	trackid,
	name,
	bytes
FROM
	tracks
ORDER BY
	bytes DESC
LIMIT 10;Code language: SQL (Structured Query Language) (sql)

Pruébalo

Para obtener las 5 pistas más cortas, ordena las pistas por la longitud especificada por la columna de milisegundos usando ORDER BY y obtenga las primeras 5 filas usando LIMIT cláusula.

SELECT
	trackid,
	name,
	milliseconds
FROM
	tracks
ORDER BY
	milliseconds ASC
LIMIT 5;Code language: SQL (Structured Query Language) (sql)

Pruébalo

Obtener el valor n más alto y el más bajo

Puedes usar el ORDER BY y LIMIT cláusulas para obtener las n filas de valor más alto o más bajo. Por ejemplo, es posible que desee conocer la segunda pista más larga, la tercera pista más pequeña, etc.

Para hacer esto, utiliza los siguientes pasos:

  1. Primero, usa ORDER BY para ordenar el conjunto de resultados en orden ascendente en caso de que desee obtener el valor n más bajo, o en orden descendente si desea obtener el valor n más alto.
  2. Segundo, use el LIMIT OFFSET cláusula para obtener la n fila más alta o la n fila más baja.

La siguiente declaración devuelve la segunda pista más larga en tracks mesa.

SELECT
	trackid,
	name,
	milliseconds
FROM
	tracks
ORDER BY
	milliseconds DESC
LIMIT 1 OFFSET 1;Code language: SQL (Structured Query Language) (sql)

Pruébalo

La siguiente declaración obtiene la tercera pista más pequeña en las tracks mesa.

SELECT
	trackid,
	name,
	bytes
FROM
	tracks
ORDER BY
	bytes
LIMIT 1 OFFSET 2;Code language: SQL (Structured Query Language) (sql)

Pruébalo

En este tutorial, ha aprendido a usar SQLite LIMIT cláusula para restringir el número de filas devueltas por la consulta.