在neo4j中仅查找单向关系

Tan*_*yan 2 neo4j

在我的neo4j graph-db中,我有一种节点Person和一种关系SENT_GIFT。因此,这在两个特定的Persons 之间建立了双向关系。例如 -

i)person_1只能赠与person_2

ii)person_2只能赠送给person_1

iii)person_1和person_2可以互赠礼物

现在,我想写一个能找到密码的人-将礼物(SENT_GIFT)送给特定人物(由profileid指定)的所有人,但特定人物没有送给那些人的礼物。

我正在尝试以以下方式编写密码-

MATCH (specific_person:Person {profileid: <profile_id>})
MATCH (from_person:Person)-[rOpp:SENT_GIFT]->(specific_person)-[rDir:SENT_GIFT]->(from_person)
WHERE rDir is null
RETURN from_person;
Run Code Online (Sandbox Code Playgroud)

但是没有得到预期的结果。

小智 5

Match (user:User)-[r]->(user2:User)
Where Not (user2)-[]->(user)
Return user, r, user2
Run Code Online (Sandbox Code Playgroud)