For the complete documentation index, see llms.txt. This page is also available as Markdown.

Generador de consultas estáticas de informes

Visión General

El MiniQueryBuilder es una interfaz fluida para construir consultas tipo SQL en Gaio DataOS. Proporciona una forma simple e intuitiva de crear consultas utilizando cláusulas como:

  • SELECT

  • FROM

  • WHERE (filter)

  • GROUP BY

  • ORDER BY

  • LIMIT

  • OFFSET


Uso Básico

// Access the query builder through context.query
const results = await context.query
  .select(['id', 'name', 'created_at'])
  .from('users')
  .filter('status', 'eq', 'active')
  .orderBy('created_at', 'desc')
  .limit(100)
  .run();

Referencia de la API

Constructor

El constructor de consultas se accede mediante el objeto context:

Métodos Disponibles

select(fields: string[])

Especifica los campos a seleccionar en la consulta.

from(table: string)

Especifica la tabla desde la cual consultar. Este método es obligatorio.

filter(field: string, operator: FilterOperator, value: any)

Agrega una condición de filtro a la consulta.

Operadores Disponibles

  • eq → igual

  • neq → distinto

  • gt → mayor que

  • gte → mayor o igual que

  • lt → menor que

  • lte → menor o igual que

  • like → coincidencia de patrón con %

  • ilike → coincidencia de patrón sin distinguir mayúsculas/minúsculas

  • in → dentro de una lista de valores

  • is → verificación de null

  • cs → contiene (para arrays)

  • cd → contenido por (para arrays)

  • ov → superposición (para arrays)

  • fts → búsqueda de texto completo

  • or → operador lógico OR

  • and → operador lógico AND

groupBy(fields: string[])

Define los campos para agrupar resultados.

orderBy(field: string, direction: 'asc' | 'desc' = 'asc', nullsPosition?: 'first' | 'last')

Agrega una cláusula ORDER BY.

limit(limit: number)

Define el número máximo de filas a devolver.

offset(offset: number)

Define cuántas filas omitir (para paginación).

run(): Promise<GenericType[]>

Ejecuta la consulta y devuelve una Promesa que resuelve un arreglo de resultados.

Usage

Valor de Retorno

Devuelve una Promesa que resuelve en un arreglo de objetos (GenericType[]). Cada objeto representa una fila del resultado, con propiedades que coinciden con las columnas seleccionadas.

Validaciones

The run() method performs the following validations before executing the query:

  • Ensures that the limit is a number

  • Ensures that the limit does not exceed 10,000 rows

  • Implicitly checks that the FROM clause is specified (through the build method)

Manejo de Errores

El método run() puede lanzar errores en los siguientes casos:

  • Si el limit no es un número

  • Si el limit supera 10,000

  • Si no se especifica la cláusula FROM

  • Si falla la solicitud a la API → El error del cliente API será propagado


Detalles de Implementación

El método run() envía una solicitud POST a:

Incluye el esquema de la consulta y los datos de la tarea, y luego extrae y devuelve los datos de la respuesta.


Ejemplos

Consulta Básica

Consulta con Filtro

Consulta con Agregación

Paginación

Última actualización