Funciones y operadores
Funciones de identificador y metadata
| Función | Retorna |
|---|---|
id(n) | NodeId interno (opaco, sabor i64) |
n._id | Igual que id(n); forma de accesor |
labels(n) | list<string> de las labels del nodo |
type(r) | string con el tipo del edge |
properties(n) / properties(r) | map<string, any> |
keys(n) | list<string> con los nombres de las propiedades |
Agregaciones
| Función | Notas |
|---|---|
count(*), count(expr), count(DISTINCT expr) | |
sum, avg, min, max | numérico / lexicográfico |
collect(expr) | agregación a lista |
String
| Función | Ejemplo |
|---|---|
toUpper(s), toLower(s) | |
trim(s), ltrim(s), rtrim(s) | |
substring(s, start[, length]) | |
replace(s, search, replacement) | |
split(s, delim) | retorna list<string> |
startsWith(s, p), endsWith(s, p), contains(s, p) | |
s + t | concatenación de strings vía + |
Numérico
| Función | Notas |
|---|---|
abs, sign, floor, ceil, round | |
sqrt, log, exp, pow(base, exp) | |
toInteger, toFloat |
Fecha y hora
| Función | Notas |
|---|---|
date(), date($iso_string) | Date |
datetime(), datetime($iso_string) | DateTime UTC en µs |
duration({days: 1, hours: 2}) |
Lista y map
| Función | Notas |
|---|---|
size(list) | longitud |
head(list), tail(list), last(list) | |
range(start, end[, step]) | end inclusivo |
[x IN list WHERE pred] | list comprehension |
keys(map) | list<string> |
coalesce(a, b, c, ...) | primer no-null |
Operadores lógicos y de comparación
| Operador | Notas |
|---|---|
AND, OR, NOT, XOR | short-circuit en AND/OR |
=, <>, <, <=, >, >= | |
IS NULL, IS NOT NULL | |
IN [list] | membresía por hash-set |
=~ '<regex>' | match por regex |
+, -, *, /, % | numérico |
+ | también concatenación de strings |
CASE
RETURN CASE WHEN p.age < 18 THEN 'minor' WHEN p.age < 65 THEN 'adult' ELSE 'senior' END AS bucketFunciones de path
| Función | Notas |
|---|---|
length(path) | cantidad de edges |
nodes(path) | list<node> |
relationships(path) | list<rel> |