Discutamos los entresijos del uso de la cláusula de límite PostgreSQL para limitar la salida a un valor especificado.
Aunque la cláusula límite es una declaración opcional, es muy útil cuando no desea que una consulta devuelva miles y miles de registros.
Uso básico
La cláusula límite es bastante sencilla. La sintaxis general para la consulta es:
Seleccione SELECT_LST desde el límite de la tabla número | TODOEl valor límite es un valor entero que especifica el límite de fila para la salida.
Por ejemplo, si una consulta devuelve 100 registros y establece el límite como 5, solo se muestran 5 filas.
NOTA: A menos que la consulta en sí devuelva menos valores que los especificados en la cláusula de límite, el valor límite siempre establece el valor de retorno.
Si el LÍMITE El valor se establece en 0, la consulta devolverá un conjunto vacío. Por otro lado, si no se establece ningún valor para el LÍMITE cláusula (nula), la consulta devolverá los mismos valores que no tiene un LÍMITE cláusula especificada.
Ejemplos de cláusula de límite de postesql
Ilustramos cómo usar el LÍMITE cláusula por ejemplos.
Ejemplo 1
El primer ejemplo muestra un simple uso del LÍMITE cláusula. En este ejemplo, utilizaremos la base de datos Sakila.
Considere la tabla de la película; Podemos determinar el número de registros utilizando la consulta:
Seleccionar recuento (*) de la película;En este ejemplo, la tabla contiene 1000 registros. Dumping todos los registros puede no ser muy eficiente. En cambio, podemos limitar la salida a solo 10 registros como:
Seleccione Film_id, Title, Release_Year, Calificación desde el límite de la película 10;Este comando debe devolver la información filtrada como se muestra en la tabla a continuación:
Ejemplo 2
En la mayoría de los casos, al limitar la salida, es bueno ordenar por una columna específica. Hacer esto le permite comprender los valores que se devuelven.
Por ejemplo, podemos ordenar la salida en el ejemplo anterior por el Film_ID.
Una consulta de ejemplo está a continuación:
Seleccione Film_id, Title, Release_Year, Calificación del orden de la película por Limit 10;En este ejemplo, los resultados están organizados por Film_ID en orden ascendente, a diferencia del ejemplo anterior en el que el resultado estaba en orden aleatorio.
Ejemplo 3
Hay un amigo en la cláusula de límite. La cláusula de compensación es bastante similar a la cláusula de límite, pero solo omite el número especificado de filas.
Por ejemplo, para comenzar el resultado de la fila de 100, podemos configurar el desplazamiento como:
Seleccione Film_id, Title, Release_Year, calificación del orden de la película por Film_id Offset 99;En este ejemplo, el resultado comienza desde el avance 100 de la fila.
Del mismo modo, es bueno ordenar que los resultados sigan un orden específico.
Ejemplo 4
También puede usar las cláusulas límite y compensación en la misma consulta. Por ejemplo, considere la consulta a continuación:
Seleccione Film_id, Title, Release_Year, calificación del orden de la película por Film_id Offset 3 Limit 10;El orden del Límite y compensación es irrelevante como el COMPENSAR se evalúa primero y luego el Cláusula de límite.
Ejemplo 5
Como se mencionó, puede usar el límite 0, que no devuelve registros. Sin embargo, devuelve las columnas como:
Seleccione * del orden de película por film_id límite 0;Ejemplo 6
También puedes usar el LÍMITE cláusula junto con el Ordenar Para obtener un número específico de los últimos elementos.
Por ejemplo, para obtener los últimos 5 elementos en una tabla, podemos establecer el Ordenar cláusula para ser Descifrar y límite el valor a 5 como:
Seleccione Film_id, Title, Release_Year, Calificación del orden de la película por Film_ID Desc Limit 5;En este ejemplo, debemos obtener los 5 últimos elementos como:
Conclusión
En esta guía rápida, discutimos cómo el Límite y compensación CLAUSE FUNCIONES. También utilizamos algunos ejemplos para ilustrar cómo puede aprovechar sus características para obtener resultados personalizados.