You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Cypher查询我关注的用户及企业发布的帖子?

解决方法:同时匹配关注的用户和企业发布的帖子

你只需要调整匹配的目标节点范围,让它同时覆盖User和Company两种类型即可。这里有两种实用的实现方式:

方式一:标签联合(最简洁的写法)

直接在匹配的目标节点上指定允许的标签集合,这样FOLLOWS关系的终点可以是用户或者企业,再关联它们发布的帖子:

MATCH (:User {id: '1'})-[:FOLLOWS]->(target:User|Company)<-[:POST]-(post)
RETURN post
ORDER BY post.time DESC
LIMIT 10

这里的target:User|Company表示匹配既可以是User标签也可以是Company标签的节点,一次性覆盖你需要的两种场景。

方式二:用UNION合并查询(更灵活)

如果后续需要对“关注用户的帖子”和“关注企业的帖子”做不同的过滤或处理,可以用UNION把两个独立查询的结果合并:

MATCH (:User {id: '1'})-[:FOLLOWS]->(:User)<-[:POST]-(post)
RETURN post
UNION
MATCH (:User {id: '1'})-[:FOLLOWS]->(:Company)<-[:POST]-(post)
RETURN post
ORDER BY post.time DESC
LIMIT 10

这种方式适合复杂业务场景,能分别控制两类帖子的查询逻辑。

小提醒

要确保你的Company节点和post之间确实存在[:POST]反向关系(也就是post-[:POST]->Company),如果企业发布帖子的关系名不是POST(比如用了POSTED_BY),记得替换成实际的关系名称哦。

内容的提问来源于stack exchange,提问作者Araz Jafaripur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:35:32