我正在使用图形db(neo4j)和cypher . 我对此查询的目标是首先匹配给定用户具有PINNED的每个Pin,然后计算每个引脚所具有的LIKES数量 . 目前我能够返回所有引脚之间的喜欢总数,但是当有多个引脚时,这些信息对我没有帮助 . 例如,如果我现在在我的数据库中运行此查询,并且有2个节点分别有2个喜欢和3个喜欢,我的查询将返回“5” . 所以我无法知道有多少喜欢属于每个引脚 . 如何编写此查询以便获取每个引脚的LIKES数量?
MATCH (u:User {lastName:"Example"})-[:PINNED]->(z:Pin)
WITH collect(z) as cs
MATCH (:User)-[:LIKES]->(y:Pin)
WHERE (y) in cs
MATCH (a:User)-[r:LIKES]->(y)
RETURN COUNT(r), y
1 回答
看起来你在比赛中有点过分,我们可以简化这一点 .