sql¶
controle
executa sql arbitrário sobre os dados de um ou mais nós do pipeline, referenciando cada nó de origem diretamente na consulta com {{ source.node_id }}. é o nó certo quando a transformação é mais fácil (ou só é possível) de expressar em sql puro do que encadeando nós lowcode.
este é o único nó de "sql livre" da plataforma — não existe uma operação de fábrica separada para isso (ver sql transform).
quando usar¶
- transformações que combinam múltiplas operações (filtro + agregação + cálculo) que exigiriam vários nós lowcode encadeados
- lógica que se beneficia de recursos sql avançados: window functions,
CASE WHENcomplexo, subqueries,QUALIFY - reaproveitar uma query já pronta (ex: escrita e validada em outra ferramenta) sem recriá-la visualmente
se a transformação é simples e cabe em um nó dedicado (filtrar, agregar, mapear...), prefira o nó lowcode correspondente — é mais fácil de ler e manter por outras pessoas do time.
configuração¶
| campo | tipo | obrigatório | descrição |
|---|---|---|---|
query |
string | sim | sql a executar, podendo referenciar outros nós do pipeline |
referenciando outros nós¶
use {{ source.node_id }} para referenciar a tabela produzida por qualquer nó do pipeline (não apenas o upstream imediato):
combinando dois nós em uma única consulta¶
SELECT p.id, p.valor, c.nome
FROM {{ source.node_pedidos }} p
JOIN {{ source.node_clientes }} c ON c.id = p.cliente_id
WHERE p.status = 'pago'
agregação com window function¶
SELECT
cliente_id,
valor,
data_pedido,
SUM(valor) OVER (PARTITION BY cliente_id ORDER BY data_pedido) AS valor_acumulado
FROM {{ source.node_pedidos }}
exemplo completo¶
{
"query": "SELECT cliente_id, COUNT(*) AS total_pedidos, SUM(valor) AS valor_total FROM {{ source.node_pedidos }} WHERE status = 'pago' GROUP BY cliente_id HAVING COUNT(*) > 1"
}
produz uma linha por cliente com mais de um pedido pago, com contagem e valor total.
sql vs. nós lowcode¶
| você precisa de... | use |
|---|---|
| filtrar, renomear, converter tipo, agregar — operações isoladas e simples | o nó de fábrica correspondente (ver transformações) |
| combinar várias operações complexas em uma única consulta, ou usar recursos sql avançados | sql (este nó) |
| cruzar duas tabelas por chave de forma visual, sem escrever sql | join |
sem query configurada, o nó vira passthrough
se o campo query for deixado vazio, o nó apenas repassa a tabela do nó anterior sem modificação — útil como placeholder temporário ao montar o pipeline.