Operaciones

Consulta

La operación Consulta te permite escribir consultas SQL personalizadas para extraer datos de tus fuentes en lugar de depender de los mecanismos de descubrimiento y extracción predeterminados. Esta operación proporciona control completo sobre tu proceso de recuperación de datos y se ejecuta antes de cualquier operación de transformación en el pipeline.

Resumen

La operación Consulta te permite:

  • Escribir sentencias SQL SELECT personalizadas para extracción precisa de datos
  • Anular el descubrimiento automático de datos con consultas específicas
  • Unir tablas, filtrar registros y agregar datos según sea necesario
  • Aplicar diferentes consultas a diferentes tipos de entidades
  • Optimizar el rendimiento de recuperación de datos con consultas personalizadas
  • Acceder a subconjuntos específicos de datos basados en requisitos comerciales complejos

Configuración

Personalización de Consultas a Nivel de Entidad

La operación Consulta se configura a nivel de entidad, permitiéndote especificar diferentes consultas SQL para cada entidad en tu conjunto de datos:

  1. Selecciona qué entidades deben usar consultas SQL personalizadas
  2. Escribe sentencias SQL adaptadas a los requisitos de cada entidad
  3. Prueba y valida tus consultas antes de la ejecución

Requisitos de Consulta

Al escribir consultas SQL personalizadas, asegúrate de que cumplan estos requisitos:

  • Las consultas deben ser sentencias SQL SELECT válidas
  • Las consultas deben devolver todos los campos requeridos para la entidad
  • Las consultas pueden incluir JOINs, cláusulas WHERE, ORDER BY y otras funciones SQL
  • Las consultas se ejecutan en el contexto de la fuente de datos configurada
  • Los resultados de las consultas deben coincidir con el esquema esperado para operaciones posteriores

Ejemplos

Consulta Personalizada Básica

Para reemplazar la extracción predeterminada de una entidad de clientes con una consulta personalizada:

  1. Añade la operación Consulta a tu regla
  2. Selecciona la entidad clientes
  3. Escribe una consulta personalizada como:
SELECT customer_id, first_name, last_name, email, phone, created_date
FROM customers
WHERE status = 'active'
ORDER BY created_date DESC

Consulta Compleja con Uniones

Para crear una vista unificada de órdenes y datos de clientes:

  1. Selecciona la entidad órdenes en la configuración de Consulta
  2. Escribe una consulta que una múltiples tablas:
SELECT o.order_id, o.order_date, o.total_amount,
       c.first_name, c.last_name, c.email,
       p.product_name, p.category
FROM orders o
JOIN customers c ON o.customer_id = c.customer_id
JOIN order_items oi ON o.order_id = oi.order_id
JOIN products p ON oi.product_id = p.product_id
WHERE o.order_date >= DATEADD(month, -6, GETDATE())

Consulta de Datos Agregados

Para extraer datos resumidos en lugar de registros individuales:

  1. Selecciona la entidad resumen_ventas
  2. Escribe una consulta de agregación:
SELECT DATE_TRUNC('month', order_date) as month,
       COUNT(*) as order_count,
       SUM(total_amount) as monthly_revenue,
       AVG(total_amount) as avg_order_value
FROM orders
WHERE order_date >= '2023-01-01'
GROUP BY DATE_TRUNC('month', order_date)
ORDER BY month

Mejores Prácticas

  • Usa consultas parametrizadas cuando sea posible para prevenir inyección SQL
  • Prueba las consultas en tu entorno de base de datos antes de añadirlas a las reglas
  • Mantén las consultas lo más simples posible para mejor rendimiento
  • Usa índices apropiadamente en tus consultas
  • Limita los conjuntos de resultados cuando no necesites todos los registros
  • Asegúrate de que los nombres de columnas coincidan con los nombres de campos de entidad esperados

Esta operación proporciona a los usuarios avanzados la flexibilidad para extraer exactamente los datos que necesitan usando SQL personalizado, evitando la necesidad de múltiples operaciones de filtrado.

Tabla de Contenidos