我运行了两个Cypher查询,它给了我一些结果
Cypher 1:
neo4j-sh (?)$ MATCH (a: Answer { id: "answerID" })<-[:CHOSE]-(u: User)
> RETURN count(u);
+----------+
| count(u) |
+----------+
| 1 |
+----------+
1 row
19 ms
Cypher 2:
neo4j-sh (?)$ MATCH (q: Question)-[:ANSWER]->(a: Answer { id: "answerID" })
> RETURN count(q);
+----------+
| count(q) |
+----------+
| 1 |
+----------+
1 row
14 ms
但结合这两个条件给我零结果
neo4j-sh (?)$ MATCH (q: Question)-[:ANSWER]->(a: Answer { id: "answerID" })<-[:CHOSE]-(u: User)
> RETURN count(u);
+----------+
| count(u) |
+----------+
| 0 |
+----------+
1 row
31 ms
此查询有什么问题吗?救命啊!
答案 0 :(得分:1)
您是否可能需要具有id =“answerId”的不同Answer节点?检查使用:
public MyAdapter(Context context, Int resource, ArrayList<value> values, String message) {
//your current code
this.message = message
}
如果这给出结果&gt; 1这将证明我的理论。在这种情况下,其中一个将连接到MATCH (a:Answer{id:'answerID'}) return count(a)
,另一个可能连接到Question
。
如果是,例如,可能会出现重复的节点您在User
中使用非粒度MERGE
。