Limit
La operación Limit te permite restringir el número de registros en la salida de tu conjunto de datos. Puedes limitar por un número absoluto de filas o por porcentaje, y aplicar el mismo límite a todas las entidades o uno distinto a cada entidad.
Resumen
La operación Limit proporciona formas flexibles de reducir el tamaño del conjunto de datos:
- Limitar por un número fijo de filas
- Limitar por un porcentaje de registros disponibles
- Aplicar el mismo límite a todas las entidades, o uno por entidad
- Elegir qué registros mantener (primeros, últimos o aleatorios)
Opciones de Configuración
Alcance
El alcance determina si se usa un mismo límite para todas las entidades o si cada entidad tiene el suyo:
Todas las entidades: Aplica el mismo límite a cada entidad por separado; no es un total para todo el conjunto de datos. Por ejemplo, si tienes 1000 registros de clientes y 1000 registros de órdenes, un límite de 500 devuelve hasta 500 clientes y hasta 500 órdenes (1000 registros como máximo). Una entidad configurada con su propio límite usa ese en su lugar.
Por entidad: Aplica el límite por separado a cada tipo de entidad. Por ejemplo, si tienes entidades de clientes y órdenes, un límite de 500 devolverá hasta 500 registros de clientes Y hasta 500 registros de órdenes (1000 registros en total como máximo).
Tipo de Límite
Puedes especificar cómo debe aplicarse el límite:
Por número de filas: Especifica un número exacto de registros a incluir. Por ejemplo, limitar a exactamente 1000 registros.
Por porcentaje: Especifica un porcentaje del total de registros disponibles. Por ejemplo, limitar al 20% de todos los registros. Al usar porcentajes, también puedes establecer restricciones mínimas y máximas de filas para asegurarte de obtener un número razonable de registros incluso cuando el porcentaje de un conjunto de datos pequeño podría ser muy pocos o demasiados registros.
Posición de la Fila
Determina qué registros se seleccionan al aplicar el límite:
Primeros registros: Selecciona registros del principio del conjunto de datos (útil para obtener los registros más recientes cuando los datos están ordenados cronológicamente).
Últimos registros: Selecciona registros del final del conjunto de datos (útil para obtener los registros más antiguos cuando los datos están ordenados cronológicamente).
Registros aleatorios: Selecciona registros aleatoriamente del conjunto de datos (útil para muestrear datos).
Restricciones de Porcentaje
Al usar límites basados en porcentaje, puedes establecer restricciones adicionales:
Filas mínimas: Asegura que incluso si el porcentaje del total de registros es pequeño, obtendrás al menos esta cantidad de filas. Por ejemplo, si estableces 5% pero quieres al menos 1000 filas, esta configuración asegura que obtendrás 1000 filas incluso si el 5% de tu conjunto de datos es menor que eso.
Filas máximas: Asegura que incluso si el porcentaje del total de registros es grande, no obtendrás más de esta cantidad de filas. Por ejemplo, si estableces 50% pero solo quieres un máximo de 50000 filas, esta configuración limita tu salida a 50000 filas incluso si el 50% de tu conjunto de datos sería más.
Integridad Referencial
Marca Garantizar integridad referencial para que el subconjunto sea coherente: una
fila hija (por ejemplo un pedido) solo se extrae si también se extrae la fila
padre a la que hace referencia (el cliente). Las filas hijas cuya clave foránea
es NULL se mantienen. La casilla solo se muestra en taps SQL: Postgres, MySQL,
Google Cloud SQL, Oracle, MSSQL, DB2, SQLite y Databricks. Cuando está activado:
- El límite se aplica a cada tabla padre, también el límite de Todas las entidades.
- Un porcentaje se convierte en un número de filas a partir del número de filas estimado de cada tabla, y después se aplican las filas mínimas y máximas.
- El filtro Where de una tabla padre también se aplica al filtrar sus hijas, de modo que las hijas solo referencian filas padre que cumplen el filtro y el límite.
- Primeros y Últimos ordenan las filas por clave primaria. Aleatorios usa un orden repetible basado en un hash de la clave primaria, así que cada ejecución elige la misma muestra (en bases de datos sin función de hash se usa el orden de la clave primaria).
- En Oracle las tablas se cualifican con el Owner del tap, en mayúsculas
(por ejemplo
"SALES"."CUSTOMERS").
Ejemplos
Limitación por Número de Filas
Para obtener hasta 1000 registros de cada entidad:
- Establece Alcance en "Todas las entidades"
- Establece Tipo de Límite en "Por número de filas"
- Ingresa "1000" en el campo de valor
- Elige qué registros mantener (Primeros, Últimos o Aleatorios)
Limitación por Porcentaje
Para obtener el 20% de los registros de cada entidad:
- Establece Alcance en "Todas las entidades"
- Establece Tipo de Límite en "Por porcentaje"
- Ingresa "20" en el campo de valor
- Elige qué registros mantener (Primeros, Últimos o Aleatorios)
Limitación por Entidad
Para obtener hasta 500 registros de cada entidad:
- Establece Alcance en "Por entidad"
- Configura cada entidad con:
- Tipo de Límite: "Por número de filas"
- Valor: 500
- Posición: "Primeros" (o tu selección preferida)