Я играюсь с neo4j и заметил, что всем запросам Cypher нужна отправная точка в предложении START. Мне было интересно, как я могу найти все отключенные узлы с помощью Cypher?
спасибо
Я играюсь с neo4j и заметил, что всем запросам Cypher нужна отправная точка в предложении START. Мне было интересно, как я могу найти все отключенные узлы с помощью Cypher?
спасибо
Если все ваши узлы проиндексированы (например, с помощью автоматического индексирования), вы можете использовать индексный запрос в качестве отправной точки, а затем найти те узлы, у которых нет исходящих отношений.
start n=node:node_auto_index("id:*")
match n-[r?]->m
where r is null
return n
В настоящее время я бы предпочел использовать:
start n=node:node_auto_index("id:*")
where not (n-->m)
return n
START a=node(*) WHERE NOT ((a)--()) RETURN a;
- person firefly2442; 10.12.2013
Я использую что-то вроде этого, но только когда использую spring-data-neo4j:
start n = node:__types__(className="com.app.entity.Model")
// match, where...
return n
Надеюсь, это поможет!
С Neo4j v3.0+ я просто использую;
MATCH (n)
WHERE NOT (n)--()
RETURN n
(или их варианты). Запрос достаточно быстрый.
Вы не можете. Глобальные запросы графа невозможны с сегодняшним Cypher.