在neo4j中获取用户时间线上的汇总消息

时间:2018-11-26 14:25:54

标签: neo4j cypher

我正在将neo4j用于我的社交项目,用户可以在其中创建,喜欢和共享帖子,并且可以彼此关注,并且用户可以在其时间轴上看到其关注者创建,喜欢和共享的帖子。 我想要像这样的汇总消息:“您,哈利和其他20个人分享了此信息”

MATCH (n:User {user_id:'5bbc7962b87e07476f6c04db'})-[:FOLLOWS]->(f:User)-[p:CREATED]-(d) 
RETURN d, 
   SIZE( ()-[:LIKED]->(d) ) as likecount, 
   SIZE( ()-[:SHARED]->(d) ) as sharecount,  
   SIZE( (n)-[:LIKED]->(d) ) as likestatus, 
   SIZE( (n)-[:SHARED]->(d) ) as sharestatus, 
   count(*) as postcount, 
CASE 
  WHEN sharestatus = 1 
    THEN "You" 
  WHEN sharecount > 1 
    THEN "abc and xyz share this post" 
END 
ORDER BY d.updated_at DESC 
SKIP 0 
LIMIT 25

我尝试了上述查询,但是没有用。

任何帮助将不胜感激。

0 个答案:

没有答案