【发布时间】:2021-12-09 19:52:42
【问题描述】:
我的查询有一个奇怪的问题。如果我这样写:
MATCH (parentOfMother: Person_kol)-->(mother: Person_kol)-[:MOTHER]->(p: Person_kol)<-[:FATHER]-(father: Person_kol)<--(parentOfFather)-->(:Person_kol) WHERE NOT (:Person_kol)<--(parentOfMother)-->(mother)
RETURN distinct(p.idPerson)
它给了我一个人,他的母亲除了这个人的母亲没有任何孩子,但是这个人的母亲的父亲有很多孩子。
如果我这样写,查询可以正常工作:
MATCH (mother: Person_kol)-[:MOTHER]->(p: Person_kol)<-[:FATHER]-(father: Person_kol)<--(parentOfFather)-->(:Person_kol) WHERE NOT (mother: Person_kol)<--()-->()
RETURN distinct(p.idPerson)
为什么会这样?我看不出查询有什么特别的区别。
【问题讨论】: