Where
La operación Where te permite filtrar tu conjunto de datos creando consultas que incluyan solo los registros que coinciden con condiciones específicas. Esta operación se aplica antes de cualquier operación de transformación en el pipeline.
Resumen
La operación Where te permite:
- Filtrar registros basados en valores de campos
- Crear condiciones complejas usando lógica AND/OR
- Aplicar diferentes filtros a diferentes tipos de entidades
- Trabajar con varios tipos de datos (cadenas, números, fechas)
Configuración
Filtrado a Nivel de Entidad
La operación Where se configura a nivel de entidad, lo que significa que puedes aplicar diferentes filtros a cada entidad en tu conjunto de datos. Para cada entidad, puedes:
- Añadir múltiples reglas de filtrado
- Agrupar reglas con operadores AND/OR
- Anidar grupos para crear lógica de filtrado compleja
Configuración de Reglas
Cada regla consta de tres componentes:
- Campo: El campo por el que quieres filtrar
- Operador: El operador de comparación a usar
- Valor: El valor con el que comparar
Los operadores admitidos varían según el tipo de campo:
- Campos de cadena: =, !=, contains, starts with, ends with
- Campos numéricos: =, !=, >, >=, <, <=
- Campos de fecha: =, !=, >, >=, <, <=
Lógica de Agrupación
Puedes organizar tus reglas en grupos con dos tipos de lógica:
- Grupos AND: Todas las reglas del grupo deben ser verdaderas
- Grupos OR: Al menos una regla del grupo debe ser verdadera
Los grupos pueden anidarse para crear condiciones de filtrado complejas. Por ejemplo, podrías tener un grupo OR que contiene dos grupos AND, permitiéndote filtrar registros que coincidan con cualquiera de dos conjuntos diferentes de condiciones.
Ejemplos
Filtro Simple
Para filtrar registros de clientes donde el estado es "activo":
- Selecciona la entidad cliente
- Añade una regla con:
- Campo: estado
- Operador: =
- Valor: activo
Filtro Complejo con Grupos
Para filtrar registros de órdenes donde:
- El monto de la orden es mayor que 1000 O
- La fecha de la orden está dentro de los últimos 30 días Y el estado de la orden es "pendiente"
- Selecciona la entidad orden
- Crea un grupo OR
- Añade una regla al grupo OR:
- Campo: monto
- Operador: >
- Valor: 1000
- Añade un grupo AND como otro hijo del grupo OR
- Añade dos reglas al grupo AND:
- Campo: fecha, Operador: >, Valor: (hace 30 días)
- Campo: estado, Operador: =, Valor: pendiente
Esto crea un sistema de filtrado flexible que puede manejar requisitos complejos de lógica empresarial.