我正在写一个密码查询来将信息合并到一个结果为我的网站。当我把它都聚集在一个Cypher组所有的结果都为5:一些帮助理解Cypher
MATCH (p:Person{username:"wkolcz"})
MATCH(p)-[]->(um:Meetup{status:"Accepted"})
WHERE toInt(um.meet_date) >= 1444827367
MATCH(p)-[]->(pm:Meetup{status:"Accepted"})
WHERE toInt(pm.meet_date) <= 1444827367
MATCH (p)-[:MEMBER_OF]->(g:Group)
RETURN count(um) as upcoming, count(pm) as past_meetups, count(g) as group_total
但是当我打破他们到各个查询和输出结果,它们是正确的。我错过了什么?谢谢!
MATCH (p:Person{username:"wkolcz"})
MATCH(p)-[]->(pm:Meetup{status:"Accepted"})
WHERE toInt(pm.meet_date) <= 1444827367
RETURN count(pm) as past_meetups
结果是1(正确)
MATCH (p:Person{username:"wkolcz"})
MATCH(p)-[]->(um:Meetup{status:"Accepted"})
WHERE toInt(um.meet_date) >= 1444827367
RETURN count(um) as upcoming
,结果为1(正确)
MATCH (p:Person{username:"wkolcz"})
MATCH (p)-[:MEMBER_OF]->(g:Group)
RETURN count(g) as group_total
结果为5(正确)
感谢布赖恩。其实我从这开始,仍然与所有5的相同结果 –
我不确定你的意思是所有5s ......你能提供一个设置脚本吗?或者可以在这里用分享按钮设置一个例子http://neo4j-console-22.herokuapp.com/? –
所有三个项目的结果都是5.所以输出结果是5个即将到来的,5个过去的成就和5个group_total。只有组数应该是5,在数据库中只有1个past_meetup和1个即将见面的聚会。看起来,它将最后一个项目的结果分配给所有变量。 –