Ir al contenido

Sort

El nodo Sort ordena los elementos de un array según un campo determinado, en orden ascendente o descendente. Permite forzar el tipo de comparación (número o texto) o dejar que el nodo lo detecte automáticamente.

Es equivalente al nodo Sort de n8n.

Si no se indica un source, el nodo opera sobre el array recibido en el data del nodo anterior. Cuando el data no es un array pero contiene una propiedad items o data que sí lo es, el nodo la usa automáticamente. Si el campo field se deja vacío, se ordena por el valor de cada elemento (útil para arrays de valores simples).

ParámetroTipoRequeridoDescripción
sourcetextNoRuta dot-notation al array dentro del data. Vacío = usa data directamente. Ejemplo: items, result.rows
fieldtextNoCampo por el que ordenar (dot-notation dentro de cada elemento). Vacío = ordena por el valor del propio elemento
orderselectNoasc (por defecto): ascendente. desc: descendente
typeselectNoauto (por defecto): detecta el tipo. number: compara como número. string: compara como texto

El nodo devuelve el array ordenado directamente (compatible con otros nodos que esperan un array):

[
{ "name": "Camiseta", "price": 12 },
{ "name": "Pantalón", "price": 30 },
{ "name": "Abrigo", "price": 80 }
]

Si la entrada no es un array (ni tiene items/data array), el nodo devuelve un error indicando que se configure source o se conecte un nodo que devuelva un array.

{
"label": "Más baratos primero",
"field": "price",
"order": "asc",
"type": "number"
}
{
"label": "Orden alfabético",
"field": "name",
"order": "asc",
"type": "string"
}

Ordenar un campo anidado de forma descendente

Sección titulada «Ordenar un campo anidado de forma descendente»
{
"label": "Mayor puntuación",
"source": "result.rows",
"field": "stats.score",
"order": "desc",
"type": "number"
}

Ordena el array de result.rows por stats.score de mayor a menor.

  • Con type: auto, la comparación respeta el tipo nativo de los valores (números, cadenas, fechas ISO como texto)
  • El campo source soporta variables dinámicas y cross-node: {{@NombreNodo.campo}}, {{#N.campo}}
  • El nodo no muta el array de entrada: devuelve una copia ordenada
  • No requiere credenciales