找到具有多个传入关系的neo4j节点

Ste*_*veS 19 neo4j cypher

我正在尝试找到具有多个传入关系的所有节点.鉴于此数据:

a-[has]->b
a-[has]->c
d-[has]->b
Run Code Online (Sandbox Code Playgroud)

所以,我正在寻找一个返回'b'的查询,因为它有更多的传入.

此查询已结束.它返回'a'和'b',因为它们都有2个关系:

match (n)--()
with n,count(*) as rel_cnt
where rel_cnt > 1
return n;
Run Code Online (Sandbox Code Playgroud)

但是,此查询(添加' - >')不返回任何内容,我不知道原因:

match (n)-->()
with n,count(*) as rel_cnt
where rel_cnt > 1
return n;
Run Code Online (Sandbox Code Playgroud)

我错了吗?

cyb*_*sam 31

这对你有用吗?

MATCH ()-[r:has]->(n)
WITH n, count(r) as rel_cnt
WHERE rel_cnt > 1
RETURN n;
Run Code Online (Sandbox Code Playgroud)

我假设,或许是错误的,'has'是适当的关系类型.如果没有,那么试试:

MATCH ()-[r]->(n)
WITH n, count(r) as rel_cnt
WHERE rel_cnt > 1
RETURN n;
Run Code Online (Sandbox Code Playgroud)