> For the complete documentation index, see [llms.txt](https://docs.gaiodataos.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gaiodataos.com/gaio-dataos-spanish/~/revisions/ROTQdWDD4onGcUzj1hEL/herramientas/tareas/etl/constructor.md).

# Constructor

<figure><img src="/files/tlFODQQW4hZTjEHlwCAQ" alt=""><figcaption></figcaption></figure>

El Builder es el constructor visual de consultas de Gaio DataOS.

Permite a usuarios técnicos y no técnicos construir consultas estructuradas de manera simple e intuitiva — sin necesidad de escribir código SQL (aunque el SQL generado puede visualizarse y editarse en cualquier momento).

### Cómo usar el Builder

#### 1. Insertar y seleccionar un bloque de tabla

Agrega una **Table** a tu flujo y selecciona el conjunto de datos con el que deseas trabajar.\
La tarea **Builder** solo estará disponible una vez que se haya seleccionado una tabla.

#### 2. Abrir la tarea Builder

En el menú lateral izquierdo, ve a:\
**Tasks > ETL > Builder**

En el panel izquierdo se mostrarán todos los campos disponibles, con íconos que indican el tipo de dato (texto, número, fecha, etc.).

#### 3. Configurar información básica

* **Task label:** (opcional) Agrega un nombre para identificar la tarea en tu flujo.
* **Table:** La tabla debe estar automáticamente vinculada desde el bloque seleccionado (ej.: `new_sales`).

#### 4. Construir tu consulta visualmente

Dentro de la pestaña **Builder**, puedes construir tu consulta utilizando los siguientes bloques:

* **Columns:** Selecciona los campos que deseas mostrar en los resultados y aplica funciones de agregación como SUM, COUNT, AVG, etc.
* **Filter:** Aplica condiciones para restringir el conjunto de datos (ej.: `region = 'South'`, `units_sold > 5`).
* **Join:** Vincula otras tablas utilizando relaciones (JOINs).
* **Group:** Agrupa los datos por una o más columnas.
* **Filter After Grouping:** Filtra los resultados agrupados (ej.: mostrar solo productos con ventas totales superiores a 100 unidades).
* **Order:** Ordena el conjunto de resultados según los campos seleccionados.
* **Rows & Page (Offset):**
  * **Limit:** Número máximo de filas a retornar.
  * **Offset:** Número de filas a omitir (útil para paginación).

#### 5. Utilizar funcionalidades de consulta

Además de la pestaña **Table**, encontrarás dos opciones en la parte superior izquierda:

* **Computed:** Permite crear campos calculados usando expresiones personalizadas.\
  Ejemplo: `units_sold * unit_price` para generar un campo de ventas totales.
* **Aggregated:** Permite gestionar y visualizar todos los campos agregados.

#### 6. Ver la salida y la lógica

En la parte superior de la pantalla encontrarás dos pestañas útiles:

* **SQL:** Muestra el código SQL generado automáticamente según tu configuración. Puedes revisarlo, copiarlo o incluso editarlo.
* **Preview:** Muestra una vista previa en tiempo real de los resultados de la consulta, ayudándote a validar la lógica antes de guardar.

#### 7. Ejecutar o guardar la consulta

* Haz clic en **Save** para guardar la configuración de la consulta.
* Haz clic en **Save and run** para ejecutar inmediatamente la consulta y visualizar los resultados.

***

### Buenas prácticas

* Utiliza campos **Computed** para crear métricas directamente en la consulta.
* Revisa siempre la pestaña **SQL** para comprender qué se está ejecutando.
* Utiliza **Preview** para validar la salida antes de guardar o publicar.
* Nombra tus consultas claramente para mantener tu proyecto organizado.
