jak znaleźć wszystkie najdłuższe ścieżki z szyfrowanym zapytaniem?
Chcę napisać bardziej przeczytane zapytanie, które znajdzie wszystkie najdłuższe ścieżki między węzłami, które mają relacje z właściwością STATUS = „on” ze sobą, tak zrobiłem do tej pory:
start n=node(*)
match p = n-[r:INCLUDE*..]->m
with n,MAX(length(p)) as l
match p = n-[r:INCLUDE*..]->m
WHERE all(rel in r
where rel.status='on' AND (length(p) = l) )
return p,l
Zwraca 3 ścieżki o długości 1,2 i 3, nie tylko najdłuższą, moje zapytanie powinno znaleźć tylko najdłuższe ścieżki, mam na myśli, jeśli jest 8 ścieżek, które pasują do mojego pierwszego warunku gdzie (where rel.status='on'
), o długości 1,2,3,3,4,6,6,6, należy zwrócić tylko trzy ścieżki o długości 6.
co mam zrobić?
proszę, poprowadź mnie, jestem nowy w neo4j, i próbowałem dużo, ale nie mam niczego oprócz zawrotów głowy, będę wdzięczny za twoją pomoc.